Repository navigation
v0.1.0 — first public release
First public release of git-graph — a local git commit-graph viewer. Point
it at a folder of projects and read their history in a browser: lanes, merges,
ref pills, diffs, and uncommitted changes.
Run it
nix run github:binaryplease/git-graph # serve the repos under the cwd
nix run github:binaryplease/git-graph -- ~/src # serve a specific folderFrom source with Bun: bun install && bun run build && bun run cli -- ~/src.
In this release
- Commit graph — pvigier's active-lane sweep, the algorithm behind
mhutchie/vscode-git-graph, GitLens and GitKraken: branch tips, n-parent
merges, lane reuse, octopus merges, root commits, disconnected histories. - Diffs — a commit's changed files inline or in a docked sidebar, plus
standalone tabs for one file, a whole commit, a branch against a base, and
the working tree (uncommitted changes vsHEAD). - Repository picker with fuzzy search over the served root.
- Light / dark / system theme, persisted.
bggCLI —servein the foreground or a backgrounddaemon, with
dynamic port allocation in front of the bind.- Nix flake — the
bggpackage, a dev shell, and a hardened
services.git-graphNixOS module.
Security posture
It is a local-machine service with no authentication: the loopback bind is
the access control. Binding a non-loopback address is a fatal startup error
unless you set GIT_GRAPH_ALLOWED_HOSTS, which asserts that an authenticating
reverse proxy fronts it. See SECURITY.md.
MIT licensed. 170 tests, bun test.