AngKorGit · Git client for macOS, Windows, Linux A native Git client for everyday work.
I got tired of Git clients that were secretly browsers. This one is native, Rust and libgit2 underneath, and it does the things you do every day without asking for an account or a subscription first.
Free. MIT. No telemetry. Updates itself.
init
Why I made this
I use Git all day, on a Mac that I like, and every client I tried felt like a website wearing a coat. Slow to open, heavy on disk, a login screen before the first commit. The command line was faster, but a good graph and a proper conflict view are worth having.
So in August 2026 I started writing one. The engine is libgit2 through Rust, the window is the system webview, and the rule for what gets in is simple: if GitKraken has a hundred features, I want the twenty-five that matter, done properly.
The rest of this page is laid out like a history. Newest commit on top in the graph, oldest first as you scroll. The line on the left fills as you read.
Conflicts
Conflicts you can read.
Both sides in one view, with line numbers on each so you can talk about line 43 with a colleague. One checkbox takes a whole side. Hover a line and a plus takes just that one.
The result pane is an editor. Click a line and type. Nothing touches the file until you press Mark resolved, and the markers are guarded so you can't save half a conflict by accident.
New in 0.10
Two branches, two folders, one window.
A worktree is a second checkout of the same repository in a sibling folder. Run a hotfix or an AI agent there while your real work sits untouched. No stash, no "let me just commit this WIP".
The sidebar lists every worktree with its branch and whether it has changes. Each opens as its own tab. Try to check out a branch that's already open in another folder and it takes you there instead, the same way git refuses on the command line.
Graph
Drag a branch onto another. That's the merge.
The graph is virtualized, so a hundred thousand commits scroll like fifty. Ref chips show the whole name or fold behind a count, never half a word. Paste a hash into the search and it jumps there.
Merges from the app are always real merge commits. Right-click does what you'd expect, and ⌘Z undoes the merge if you picked the wrong branch.
Keyboard
⌘K, then type.
Every command in the app is in the palette, including the ones buried in a right-click menu. Shortcuts are printed next to the menu items so you learn them by using the mouse.
⌘Z undoes, ⌘⇧Z redoes, ⌘B hides the sidebar, [ and ] move between files in a diff. The Escape key closes exactly one thing at a time.
Native
Native, not a browser.
Most Git clients are a website wrapped in its own copy of a browser, which is why they take a moment to open and sit heavy on the disk. AngKorGit draws its window with the webview your OS already ships, and talks to the repository through libgit2 in the same process. It opens quickly, updates itself, and stays out of the way.
- Engine
- Rust and libgit2, no shelling out for the things you do all day.
- 100k commits
- The graph and diffs are virtualized. Long histories scroll like short ones.
- Cold start
- Open, splash, repo. The repository is read in process, no daemon to wait for.
Spec sheet
Everything in the box
The whole list, in plain words. If it isn't here, it isn't in the app.
Every day
- Stage files, hunks, or single lines
- Commit with summary and description, drafts saved per repository
- Amend, revert, reset (soft, mixed, hard)
- Undo and redo for commits, checkouts, merges, rebases
- Working copy watcher, so the WIP row is always right
- Auto fetch in the background
Branches
- Branch folders in the sidebar
- Drag one branch onto another to merge or rebase
- Interactive rebase: reorder, squash, reword, drop
- Cherry-pick one or many, with the origin reference
- Worktrees: list, create, remove, prune
- Stashes, tags, submodules
Reading changes
- Inline or side by side, word level highlighting
- Whole file view, image diffs, a minimap you can click
- Previous and next change, previous and next file
- Commit search by text, author, branch, or hash
- File history
- Commit details with parents, refs, and per-file counts
Remotes and accounts
- Fetch, pull, push, with the credential chain git itself uses
- SSH keys and access tokens. Several accounts on one host
- Identity profiles stored per repository, never in the global gitconfig
- Pull requests: list, check out, create, pick reviewers (GitHub, GitLab, Bitbucket)
- Commit signing through your existing git config (SSH or GPG)
Conflicts
- Both sides aligned, line numbers on each
- Take a side, a block, or one line
- Edit the result in place, or the whole file
- AI explanation of a conflict on request
The rest
- ⌘K palette with every command, shortcuts shown next to menu items
- 16 themes, dark and light, five accents
- Built-in terminal per repository
- Real confirmation dialogs before anything destructive
- Signature-verified updates from GitHub releases
And not
What I left out, on purpose
- In-app pull request review
- The forge does this better, with CI logs and suggestions. There is an Open in browser button.
- Telemetry, accounts, a cloud
- Nothing phones home. There is nothing to sign up for.
- A blame view
- File history is there. Line-level blame is on the list.
- A plugin marketplace
- Not yet. The palette and sidebar are list driven, so it is possible later.
AI, optional
Uses the AI you already have.
AngKorGit doesn't ship a model or a token wallet. If you've got Claude Code, GitHub Copilot CLI, Codex, Gemini CLI, OpenCode or Antigravity installed, it finds the binary and uses your own login and quota. No key to paste.
Or point it at an API key, or at Ollama on your own machine. Whatever you pick, requests go straight from your computer to that provider. There is no server of mine in between.
What it's used for: a commit message from the staged diff, a plain-language explanation of a commit or a conflict, a review of what you're about to commit, and a pull request description. Every one of those has a Stop button.
Detected on this machine
- >_ Claude Code CLI you already log into In use
- >_ GitHub Copilot CLI CLI you already log into
- >_ Codex CLI you already log into
- >_ Gemini CLI CLI you already log into
- >_ OpenCode CLI you already log into
Or a provider
- OpenCode · CLI you already log into
- Anthropic · API key
- OpenAI · API key
- Gemini · API key
- Ollama · local, no key
- LM Studio · local, no key
Commit message style
Install · v0.17.0
Pick your platform.
Every build is compiled in public by GitHub Actions from the source you can read, and the app checks for the next version itself.
Mac with Homebrew
brew install --cask cheat2001/tap/angkorgit -
macOS
Intel and Apple Silicon, one file
DownloadAngKorGit_0.17.0_universal.dmg
Not signed with an Apple certificate, so macOS asks once. Right-click, Open, or use Homebrew below and it never asks.
-
Windows
x64 installer
DownloadAngKorGit_0.17.0_x64-setup.exe
SmartScreen will say the publisher is unknown. More info, then Run anyway. An .msi is on the releases page too.
-
Linux
AppImage, .deb and .rpm
DownloadAngKorGit_0.17.0_amd64.AppImage
chmod +x and run. Needs WebKitGTK 4.1 and libssl, which most desktops already have.
Install from the terminal without Homebrew
curl -L https://github.com/cheat2001/angkorgit/releases/download/v0.17.0/AngKorGit_0.17.0_universal.dmg -o ~/Downloads/AngKorGit.dmg
xattr -cr ~/Downloads/AngKorGit.dmg
open ~/Downloads/AngKorGit.dmg curl -L https://github.com/cheat2001/angkorgit/releases/download/v0.17.0/AngKorGit_0.17.0_x64-setup.exe -o "$env:TEMP\AngKorGit-setup.exe"
Start-Process "$env:TEMP\AngKorGit-setup.exe" curl -L https://github.com/cheat2001/angkorgit/releases/download/v0.17.0/AngKorGit_0.17.0_amd64.AppImage -o ~/Downloads/AngKorGit.AppImage
chmod +x ~/Downloads/AngKorGit.AppImage
~/Downloads/AngKorGit.AppImage Something odd on first launch? The getting started page walks through each prompt. All versions are on the releases page.
- AngKorGit or Angkor Git?
- One word, AngKorGit. People also write Angkor Git, angkorgit or GitAngkor, and they all mean this app. angkorgit.app is the only official site, and the code lives on GitHub under cheat2001/angkorgit.
- Is it really free?
- Yes. MIT licensed, the whole source is on GitHub, and there is no paid tier hiding behind a feature. If it saves you time and you feel like it, there is a coffee link in the footer.
- Why does macOS warn me on first launch?
- The build isn't signed with an Apple developer certificate yet, so Gatekeeper asks once. Right-click and Open, or install through Homebrew, which clears the flag for you. After that the updater handles new versions and verifies each one with a signature.
- Does it send anything anywhere?
- No telemetry, no crash reporting, no account. The only network traffic is git itself, the update check against GitHub releases, and whatever AI provider you choose to enable.
- How does it compare to GitKraken or Fork?
- Faster to open, lighter, and narrower on purpose. GitKraken took the workflow ideas further than anyone and I learned from it, but I wanted the twenty-five features that matter rather than the hundred. Fork is closer in spirit, though it is not open source and not on Linux.