Skip to content

GeeTree v0.2.2

Choose a tag to compare

@cmzy cmzy released this 26 Oct 08:35

The first public release of GeeTree: a professional Git client for macOS, Windows and Linux, written in Rust and rendered entirely on the GPU with GPUI, the UI framework behind Zed.

Free to use — no account, no licence key.

Built for very large repositories

On a clone of the Linux kernel (about 1.5 million commits), the first screen of history is on screen in half a second, and a search over every commit message returns in about 77 ms. History, references and search are indexed incrementally, so you can scroll, search and jump while the rest loads in the background.

Reads go through gitoxide; anything that changes the repository or talks to a remote runs your own git, so hooks, credential helpers, signing, LFS and submodules behave exactly as they do on the command line. Minimum git is 2.30.

What's in it

History and references — a lane-based commit graph, author and path filters, instant jump to any branch, tag or SHA, and branches, tags, stashes and worktrees in one tree.

Commit and diff — file status with staging and discarding by file or by hunk, amend, GPG/SSH signing, commit-and-push; side-by-side and inline diffs with syntax highlighting, image and hex views for binary files, and blame. Compare any two branches, tags or commits (or the working tree), and any two files or folders on disk.

Merge, rebase and conflicts — merge, cherry-pick and revert with a built-in conflict editor and three-way view; an interactive rebase editor (reorder, reword, squash, fixup, drop) that also works straight from the history; Git Flow set-up, features, releases and hotfixes. Every dialog spells its choices out to git in both directions, so your configuration cannot change what the dialog promises.

Search — commit messages, authors, paths and the diff of every commit, backed by a local incremental index, with saved searches.

Everything else you work in — multi-repository tabs, a home page with bookmarks and directory scanning, an embedded terminal, a ⌘K command palette for every action, clone/fetch/pull/push dialogs with live progress and a task centre for background jobs, GitHub, GitLab, Bitbucket and Azure DevOps accounts (hosted and self-hosted) with browser sign-in and cloning from your repository list, custom actions that run your own commands on the selected commits or files, your external diff and merge tools, a geetree command for the terminal, six colour themes plus your own, dark and light following the system, and English and 简体中文 interfaces.

Download and install

Platform File
macOS, Apple silicon GeeTree_aarch64.dmg
macOS, Intel GeeTree_x64.dmg
Windows x64 GeeTree_x64-setup.exe
Debian / Ubuntu GeeTree_amd64.deb
Other Linux x86_64 GeeTree_x86_64.AppImage

macOS also installs with Homebrew, which picks the right build for your chip:

brew install --cask cmzy/tap/geetree

The Windows installer installs for the current user and needs no administrator rights. The .deb pulls in git as a dependency; the AppImage needs no installation.

Requirements: macOS 12 or later · Windows 10 1809 or later (x64) · Linux with glibc 2.35 or later (Ubuntu 22.04, Debian 12 …), Wayland or X11 · git 2.30 or later on every platform.

Verify your download against the SHA256SUMS file attached to this release:

shasum -a 256 -c SHA256SUMS --ignore-missing   # macOS
sha256sum -c SHA256SUMS --ignore-missing       # Linux
Get-FileHash .\GeeTree_x64-setup.exe -Algorithm SHA256   # Windows

Notes on this first release

  • The macOS builds are signed and notarised. The Windows installer is not yet code-signed, so SmartScreen will show "Windows protected your PC" — choose More info → Run anyway, and check the file against SHA256SUMS first. Signed Windows builds are coming in a following release.
  • This is a 0.x release: the features above are implemented and in daily use, and the first stable version is being prepared. GeeTree checks for new versions itself and can install them for you.
  • Found a problem? Preferences → Feedback opens a report with the logs attached, or open an issue directly at https://github.com/cmzy/geetree/issues.

中文

GeeTree 的首个公开版本:macOS、Windows、Linux 上的专业 Git 客户端,用 Rust 编写,基于 Zed 的 UI 框架 GPUI 纯 GPU 渲染。免费使用,无需注册。

为超大仓库设计:在 Linux 内核的克隆(约 150 万个提交)上,历史第一屏半秒上屏,全量搜索提交信息约 77 毫秒。历史、引用和搜索增量建立索引,其余内容在后台加载时就可以滚动、搜索、跳转。读取走 gitoxide,所有写入和网络操作交给你自己的 git,因此钩子、凭据助手、签名、LFS、子模块的行为与命令行完全一致(需要 git 2.30 及以上)。

包含:泳道式提交图、按作者与路径筛选、跳转到任意分支/标签/SHA;文件状态(按文件或按块暂存与丢弃)、修补提交、GPG/SSH 签名、提交并推送;并排与行内 diff(语法高亮,二进制文件有图片与十六进制视图)、blame、任意两个版本或磁盘上任意两个文件/目录的对比;合并、cherry-pick、revert,内置冲突编辑器与三方视图;交互式 rebase 编辑器;Git Flow;提交信息、作者、路径与每个提交 diff 的搜索(本地增量索引、可保存搜索);多仓库标签页、带书签与目录扫描的首页、内置终端、⌘K 命令面板、带进度的克隆/抓取/拉取/推送与后台任务中心;GitHub、GitLab、Bitbucket、Azure DevOps 账号(含自建)与浏览器登录;自定义操作、外部 diff/合并工具、geetree 命令行;六套配色主题(也可自带)、深浅色随系统、中英文界面。

安装:macOS 用 brew install --cask cmzy/tap/geetree 或下载对应芯片的 .dmg;Windows 用 GeeTree_x64-setup.exe(安装到当前用户,不需要管理员权限);Linux 用 .deb(自动装上 git)或 AppImage(免安装)。系统要求:macOS 12+ / Windows 10 1809+ (x64) / glibc 2.35+ 的 Linux(Wayland 或 X11),均需 git 2.30 以上。下载后请用本页的 SHA256SUMS 校验。

首个版本需要注意:macOS 版本已签名并公证;Windows 安装包尚未代码签名,SmartScreen 会提示"Windows 已保护你的电脑",选择"更多信息"→"仍要运行",并先用 SHA256SUMS 校验文件,签名版本会在后续发布中提供。这是 0.x 版本,上述功能均已实现并在日常使用中,正式版正在准备;应用会自行检查并安装新版本。遇到问题可在「偏好设置 → 反馈」中附带日志提交,或直接到 https://github.com/cmzy/geetree/issues。