What does it cost? Do I need an account?
It is free to use and needs no account: no sign-up, no licence. Download it and open it.
Is it open source?
No. It is free, but the source is not published.
Does it upload my code, or anything about how I work?
No. There is no telemetry and no analytics. The app goes online for three things:
- git itself: fetching, pushing and cloning run your own git against your own remotes. GeeTree is not in between.
- The update check: at launch, at most once a day, to
api.geetree.app. The request carries the version and the platform and nothing else; Preferences → Update turns it off. - Hosting accounts: their APIs, only after you have signed in yourself and only while you use those features.
Privacy spells all of it out.
Which platforms?
macOS 12 or later, Windows 10 1809 or later (x64), and Linux with glibc 2.35 or later (Wayland or X11). Every platform needs git 2.30 or later. The download page lists the packages.
Which git does it use?
The one you installed. Everything that writes or talks to a remote runs the git on your PATH as a subprocess (Preferences can point at another one), so hooks, credential helpers, commit signing, LFS, submodules and insteadOf all keep working, and the command line and the app see the same repository. Reading — history, status, diffs, blame — goes through gitoxide, which is why it is fast.
How large a repository can it open?
There is no limit on the number of commits. Measured here on a clone of the Linux kernel (1,485,419 commits, 958 refs): the first screen of commits is up in half a second and the rest streams in behind it, with scrolling, searching and jumping available while it does; searching all of the commit messages takes about 77 ms.
Which hosting services does it work with?
Any git remote, because the thing talking to it is your own git. Beyond that, Preferences → Accounts signs in to GitHub, GitLab, Bitbucket and Azure DevOps for the things that need their APIs.
How do I update it?
The app checks for a new version at launch, at most once a day, and tells you when there is one; Preferences → Update checks on demand and turns the automatic check off. Installed with Homebrew, brew upgrade --cask cmzy/tap/geetree does it.
Where do the settings, the index and the logs live?
- Settings are written to
settings.tomlin the platform’s configuration directory; account tokens are kept in the system keychain, never in that file. - Each repository’s index and cache live in the data directory, logs in the system log directory, and crash reports in the data directory’s
crashesfolder. - None of it is sent anywhere on its own.
Where do I report a problem?
Preferences → Feedback opens a prefilled GitHub issue in your browser, which you read and submit yourself. GitHub Issues works too.
Last updated: 2026-10-27