Skip to content
Git Tree

Git GUI for macOS, Windows and Linux

See your whole repository. Change it with confidence.

Git Tree turns your history into a clear, interactive commit graph and puts every everyday Git action one click away — staging, commits, branches, merges, rebases and pushes. Sign in once with GitHub; your repositories never leave your computer, and there is no telemetry.

Free · macOS 13+ (Apple silicon and Intel) · Windows 10 and 11 · Linux: Ubuntu 22.04+ and Debian 12+

Git Tree commit graph with colour-coded branch lanes, branch and tag labels, the reference sidebar and the commit details panel
  • Ready in a minute

    Sign in once with a free Git Tree account, then open any repository.

  • Stays on your computer

    Your code never leaves your machine. Only your account lives online.

  • Zero telemetry

    Nothing is tracked. The only network traffic is what you start.

  • Your own Git

    Every command runs through the Git you already have installed.

commits scroll smoothly in the graph
100K+
bytes of telemetry, ever
0
feature areas, from staging to pull requests
12
platforms: macOS, Windows and Linux
3

Built for how you really work

Every Git workflow, in one clear window

Repository tabs, a reference sidebar, the commit graph and a details panel — the layout experienced developers expect, with nothing hidden behind menus.

A commit graph you can actually read

Every branch gets its own colour-coded lane, so merges, releases and feature work read at a glance — even in repositories with years of history.

  • Smooth scrolling well past 100,000 commits
  • Branch, remote and tag labels right on the graph
  • Avatars and relative dates for every commit
Git Tree commit graph with colour-coded branch lanes, branch and tag labels, the reference sidebar and the commit details panel

Every command, one click away

The Git you know, made visible

  • $gitcommit-m "feat: ship it"
  • $gitrebase-i HEAD~4
  • $gitcherry-picka3f9c1e
  • $gitstashpush -u
  • $gitmerge--no-ff feature/graph
  • $gitworktreeadd ../hotfix main
  • $gitpush--force-with-lease
  • $gitbisectstart
  • $gitblamesrc/app.ts
  • $gitreset--soft HEAD~1
  • $gitreflog
  • $gitlfstrack "*.psd"

Diff, blame and history

Understand every change before it ships

Read a commit’s changes as a split or inline diff with syntax highlighting for dozens of languages. Follow a file through renames, see who changed each line and compare any two revisions.

  • Split and inline diff views
  • Blame and file history that follow renames
  • Compare branches, tags or any two commits
A commit’s changes shown as a side-by-side diff in Git Tree with syntax highlighting

Commit with care

Write better commits, faster

A focused commit panel shows what is staged, counts your summary against the 72-character convention and remembers recent messages. Amend the last commit or add co-authors with one click.

  • Live summary length check
  • Recent messages and commit templates
  • Amend, co-authors and signed commits
Writing a commit message in Git Tree with a live 72-character summary counter

Terminal included

The command line is always one click away

Open a terminal docked under the graph, already in your repository. Run tests or scripts, then watch the graph update as soon as Git changes.

  • Terminal opens at the repository root
  • Your own shell and profile
  • Graph refreshes when the repository changes
Built-in terminal docked under the commit graph in Git Tree

Open, clone, init

Every repository, one tab away

Open local repositories, clone over HTTPS or SSH, or start a new one. Tabs, favourites and workspaces keep all your projects close, and your session comes back exactly as you left it.

  • Shallow, sparse and blobless clones
  • Favourites, recent repositories and workspaces
  • Scan folders to find existing repositories
Git Tree start page with Open, Clone and Init actions, recent and favourite repositories

Safe by design

You can’t lose work by clicking the wrong button

Git is powerful, and powerful tools deserve safety rails. Git Tree snapshots your work before anything destructive and lets you undo it.

  • Undo and redo

    Reset, discard, delete and rebase can be reversed from the toolbar.

  • Snapshots first

    Destructive actions save a recoverable copy before they run.

  • Safer force-push

    Force-push uses --force-with-lease, so it never overwrites work you haven’t seen.

  • Cancel by default

    Dangerous dialogs focus Cancel and say exactly what will happen.

Complete toolkit

Everything you need, from the first commit to the release tag

Git Tree covers the commands developers use every day, plus the advanced ones you reach for when something needs fixing.

Native on every platform

Made for macOS, Windows and Linux

A small, fast desktop app built with Rust. It respects each platform’s window controls, shortcuts, keychain and file system.

  • macOS

    macOS 13 Ventura or later

    One universal app for Apple silicon (M1–M4) and Intel Macs.

    Download for macOSUniversal .dmg
  • Windows

    Windows 10 (22H2) or Windows 11, 64-bit

    A native Windows app with custom window chrome and Snap Layouts.

    Download for Windowsx64 installer (.exe)
  • Linux

    Ubuntu 22.04 or later, Debian 12 or later, 64-bit

    For Ubuntu and Debian: a .deb package that apt installs for you, or a portable AppImage. It uses your desktop’s own window title bar.

Frequently asked questions

Straight answers about Git Tree, privacy and platforms.

What is Git Tree?

Git Tree is a free desktop Git client (a Git GUI) for macOS, Windows and Linux. It shows your repository as an interactive commit graph and lets you stage, commit, branch, merge, rebase, stash and push without typing Git commands.

Is Git Tree free?

Yes. Git Tree is free to download and use. There is no subscription and no trial; you sign in with your GitHub account.

Do I need an account to use Git Tree?

Yes, a free one. Git Tree asks you to sign in once with a Git Tree account, which you create on this website with GitHub. Connecting GitHub or Bitbucket accounts in the app, for your remote repositories and pull requests, is a separate and optional step.

Does Git Tree collect any data?

No. Git Tree has no telemetry, and your code never leaves your computer. With default settings the app only talks to the remotes you fetch from or push to, the accounts you connect, the Git Tree account service for sign-in and an update check you can switch off. The privacy page lists what your account stores.

Which operating systems are supported?

macOS 13 Ventura or later on Apple silicon and Intel Macs (one universal app), 64-bit Windows 10 (22H2) and Windows 11, and 64-bit Linux: Ubuntu 22.04 LTS or later and Debian 12 or later, plus derivatives that ship WebKitGTK 4.1, such as Linux Mint 21+ and Pop!_OS 22.04+ (only Ubuntu and Debian are tested).

Do I need Git installed?

Yes. Git Tree uses the Git you already have (version 2.39 or newer), so everything it does matches what the command line would do. If Git is missing, the app explains how to install it.

Does it work with GitHub and Bitbucket?

Yes. Git Tree works with any Git remote over HTTPS or SSH. You can also connect GitHub and Bitbucket Cloud accounts to browse and clone repositories and to list, create and review pull requests.

Can I undo a mistake?

Yes. Destructive operations such as reset, discard, branch deletion and rebase save a recoverable snapshot first, and the toolbar’s Undo and Redo buttons reverse them.

Give your repositories the tool they deserve

Download Git Tree for free on macOS, Windows or Linux and open your first repository in seconds.