A Git client that stays fast when the history is real.
FluxGit is a desktop Git client for macOS, Windows and Linux. It draws a hundred thousand commits in about forty milliseconds, keeps a restore point before every operation that can lose work, and records who changed the repository - you, or an agent by the name it declared.
The graph, measured
Numbers from graph.layout.bench.ts, run on an Apple Silicon Mac. They are the
layout pass, which is the part that grows with your history. Reproduce them with
npx vitest bench; if they no longer hold, this page is wrong and gets corrected.
| History | Layout |
|---|---|
| 100,000 commits, linear | 42 ms |
| 100,000 commits, 512 branches interleaved | 52 ms |
| 100,000 commits, merge-heavy | 54 ms |
| 100 new commits on top of 99,900 already drawn | 11 ms |
The last row is the one you feel: pulling does not redraw the graph from scratch. The history is read with git's own graph traversal, and the canvas only builds paths for the commits inside the viewport.
What it does, as a Git client
- Every branch, as you scroll. The graph spans all branches and keeps them as you page deeper into history, interleaved by date rather than collapsed into one line.
- Vertical or as a timeline. Horizontal mode places commits on a real time axis, so bursts of work and quiet weeks are visible.
- Staging, conflicts, worktrees, submodules, stashes, tags, reflog. The ordinary work, with the state on the surface rather than behind a command.
- Search across messages and authors without leaving the graph.
- Bisect, blame and the history of a single file, guided rather than memorised.
- Linux, macOS and Windows from one source.
- Credentials in the operating system's vault, not in a config file.
Two things other Git clients do not do
A restore point before anything destructive. Reset, discard, branch deletion and force operations capture a way back first, and show you the risk and the preview before they run - not a confirmation dialog, the actual consequence.
An audit of who changed the repository. Git records commits. It does not record that something discarded your uncommitted work, or that an agent asked to reset a branch and you approved it. FluxGit keeps that: the operation, the actor - a person, or an agent by the name it declared over MCP - the restore point and the outcome, in a hash chain where a removed or edited entry is detectable. Writes that reached the repository outside FluxGit are recorded as unattributed, because the hook can see them happen and cannot say who ran them.
The graph, moving
Four branches alive at once, interleaved by date, with the working-copy node hanging off the commit you are actually on. Recorded from the application against a seeded history; no narration.
The audit, opened
Every operation FluxGit performed, who caused it, whether a restore point was captured, and whether the chain is intact. The push recorded as unattributed is one that reached the repository outside FluxGit: the hook saw it happen and cannot say who ran it.
Where it is honest about its limits
FluxGit is in public beta. The macOS builds are signed and notarized by Apple. The Windows
installer is not code-signed yet, so Windows shows a SmartScreen warning the first time you
run it. The Linux build is a .deb for x86_64.
Free mode opens public repositories on GitHub, GitLab.com and Bitbucket.org. Private, self-hosted and local-only repositories need a licence, and there is a 14-day trial of everything a licence unlocks, with no card.