Open source · written in Rust

The Git client that keeps up with you.

GitChrono gives you a GitKraken-style commit graph, line-by-line staging and instant diffs — in a native app that opens huge repositories in seconds.

macOS · Windows · Linux — free
GitChrono showing a colorful commit graph with branches, tags and a commit detail panel
85,767commits of git.git loaded in ~2.8 s
80 msto lay out the full graph
<1%CPU in the background, even during builds
Features

Everything you reach for, every day.

The workflow you know from GitKraken, rebuilt from scratch as a native app with nothing in between you and your repository.

A graph you can read

Every branch, remote, tag and stash in one colorful, topologically ordered graph — with HEAD and your uncommitted work right on top.

Stage lines, not just files

Click the exact lines you want, or stage, unstage and discard whole hunks. Perfect commits without touching the terminal.

Native speed

Rust from top to bottom, GPU-rendered with gpui. History comes straight from gitoxide, so even giant repos open in seconds.

Right-click anything

Checkout, branch, tag, merge, rebase, cherry-pick, revert and reset straight from the graph, the sidebar or the file list.

Always up to date

Edit in your editor, commit in the terminal — GitChrono notices instantly, and stays quiet while it's in the background.

Behaves exactly like git

Writes go through your own git, so hooks, SSH keys, credential helpers and commit signing all just work.

How it works

Fast where it matters, faithful everywhere else.

  • 1
    Reads in-process with gitoxideHistory walks, refs and commit trees are read directly from the object database — no subprocess per commit.
  • 2
    Writes through your gitCommit, push, rebase and stash run your installed git, so every repository behaves exactly like it does in the terminal.
  • 3
    Painted on the GPUThe graph and lists are virtualized and drawn with gpui, the framework behind the Zed editor.
// gitchrono-core: the history walk
let walk = topo::Builder::new(&repo.objects)
    .with_tips(tips)
    .sorting(topo::Sorting::TopoOrder)
    .with_commit_graph(repo.commit_graph_if_enabled()?)
    .build()?;

// …and a partial patch for line staging
repo.apply_patch(&patch, ApplyMode::Stage)?;
//   → git apply --cached --recount -
Download

Get GitChrono.

Free for personal and commercial use. Requires git 2.40 or newer on your PATH.

Builds are published on GitHub Releases.
Open-core

Free at its core. AI when you want it.

GitChrono

Free · Apache-2.0
  • Commit graph and diffs
  • Line- and hunk-level staging
  • Branches, tags, stashes, merge & rebase
  • Every platform, no account required

GitChrono AI Coming soon

Pay as you go — or bring your own key
  • AI commit messages, branch names and explanations
  • Split messy changes into clean commits
  • Release notes from any tag range
  • Prepaid credits at near cost, no subscription
  • Or use your own OpenAI, Anthropic, Mistral or local Ollama key