Guides

How to choose a Git client: visual or terminal, platforms, cost

Choose a Git client by visual or terminal style, operating system, cost and hosting. Compare GitHub Desktop, Lazygit, GitKraken, GitUI, Sourcetree and Tower.

By listme.name 3 min read Share

Choose a Git client by whether you want a visual window or a terminal interface, which operating systems you use, and what it costs for the work you do. The Git client ranking favors free clients that run on several systems, then weighs visual depth, terminal workflows and paid features. This guide covers six of the products in that ranking.

Visual window or terminal interface

Graphical clients draw the commit history and make staging and branching visual. GitHub Desktop, GitKraken, Sourcetree and Tower work this way. Lazygit and GitUI are terminal interfaces that keep Git on the keyboard, and they suit people who already work in the terminal.

The terminal option has a learning curve. Lazygit has no graphical window, so newcomers need time to learn its keys. GitUI's key bindings also need learning before use. Lazygit covers staging individual hunks or lines, interactive rebase, cherry-picking, bisect and a commit graph, so the visual layer is there even without a window.

Feature depth varies too. Tower offers an undo option for Git actions and tools for pull requests, while GitKraken adds merge conflict resolution alongside its commit graph. Sourcetree draws branch diagrams and handles both Git and Mercurial repositories. Lazygit installs through common package managers on Linux, macOS and Windows, and GitUI is packaged for many Linux distributions. GitUI's README includes a benchmark written by its author, so treat its speed claims as the author's own.

Operating systems

Platform support splits the field. GitKraken, Lazygit and GitUI run on Linux, macOS and Windows. GitHub Desktop runs on macOS and Windows, and GitHub states that Linux is not officially supported, though community builds come from a fork of the project. Sourcetree runs on Windows and Mac, with no Linux version. Tower runs on Mac and Windows and does not run on Linux.

Cost and licensing

Three of the six are free and open source under the MIT license: GitHub Desktop, Lazygit and GitUI.

The other three charge in different ways. GitKraken is free for local and public repositories, but private repository access needs the paid Pro plan, and team plans are priced per seat. Sourcetree is free to download for Windows and Mac, and Atlassian also sells a Windows Enterprise version for managed deployments. Tower has no free plan for working professionals. It offers a 30-day trial that needs no credit card, and paid plans start at $69 per user a year for individuals. Enrolled students and educators can use it free.

GitKraken, Sourcetree and Tower are not open source.

Hosting services

GitHub Desktop is built for GitHub repositories, so it suits people who host their work there. Sourcetree suits teams that already use Atlassian tools. GitKraken connects to hosted repositories, and Tower includes tools for pull requests. A client that matches where your repositories live saves setup work.

Our picks and what to do next

The ranking places the clients covered here in this order, using editorial judgments against its criteria:

  • GitHub Desktop: a simple free client for GitHub users.
  • Lazygit: a visual layer over Git for people who work in the terminal.
  • GitKraken: visual Git on Linux, Mac and Windows.
  • GitUI: fast Git work in a terminal window.
  • Sourcetree: Windows and Mac teams on Atlassian tools.
  • Tower: Mac and Windows developers and designers.

The ranking also includes Sublime Merge (85.5), a paid Git client with line-by-line staging and commit editing on Mac, Windows and Linux. A license is needed for continued use, and business use is billed per user each year.

The full criteria are on the Git client ranking. Choose by three things: whether you want a window or a terminal, which operating systems you use, and whether you need private repositories or team features. GitHub Desktop, Lazygit and GitUI are free and open source. GitKraken is free for local and public repositories. A Linux desktop rules out GitHub Desktop, Sourcetree and Tower. Advanced Git operations may still need the command line, so keep a terminal close even when you use a graphical client.

Compare head to head

Mentioned in this article