Free and open source · MIT licensed

Complex Git history.
Clear strata. Clear head.

See the whole story of your code. Follow every branch, stage the right changes, and resolve conflicts in a workspace that feels like your own. Your Git setup comes with you.

Linux, macOS & Windows All downloads

Git Workbench
Git Workbench showing a real repository with colored commit strata, parallel branches, and the selected commit details.
Every branch. Every commit. The whole picture.
  • Your system Git
  • No account required
  • Local-first workflow
Linux? One line and you're in.
curl -fsSL https://gitworkbench.github.io/install.sh | bash

Debian, RPM, Arch & AppImage · SHA-512 verified by the installer.

h1s70ry // try the timeline

Watch a branch take shape.

Scrub a fictional commit history. Each step grows the graph and reveals the files and message from that moment.

Explore history replay and file archaeology →
sample-projectmain · visual history
Step 1 of 8
mainfeature/history-demo
The graph grows one commit at a time
Maya Demo2f8c1a4

feat: create the workspace shell

The demo starts with a small workspace and a clean main branch.

Changed files
  • src/App.tsx
  • src/styles/workspace.css

Sample commits, authors, and files are fictional. This interactive demo does not connect to a repository or change files.

a1f3c2d // features

Your Git workflow.
All in one workbench.

Read branch history, review a patch, resolve a conflict, and recover a change. Explore the tools behind each part of your day.

  1. Interactive commit strata

    Every branch travels its own color lane, curves drawn by hand in the graph. Select a node to open its files, parent hashes, and patch. HEAD, local and remote branches, and tags sit inline beside each summary.

    Cubic Bézier lanes · Parent links · Adjustable row density

  2. History time machine & file archaeology

    Replay a local or remote branch one commit at a time as the graph grows. Inspect each step’s changed files and diff, then scrub a file’s history to see who changed each line and what the commit said.

    Read-only replay · Historical blame · Per-commit file diffs

  3. Quiet milestone celebrations

    See a brief, subtle confirmation after a rebase completes or the last conflict is resolved. Turn milestone animations off in Appearance settings, or let your reduced-motion preference keep the interface still.

    Optional · Reduced-motion aware · Easy to disable

  4. Hunk-level staging

    Read unified or side-by-side diffs with syntax highlighting, then stage, unstage, or discard individual hunks. Flat path lists and expandable folder trees both mark added, modified, deleted, and renamed files.

    A/M/D/R badges · Line counts · Zip through the tree

  5. Three-pane conflict editor

    Current and Incoming flank an editable result, with the read-only common ancestor on demand. Repeated conflicts offer remembered resolutions backed by git rerere – preview first, apply explicitly.

    Gutter arrows · keep both · Alt+↑/↓ between blocks

  6. Pull & merge requests

    Browse open requests for any remote, read conversations and CI checks, post line comments, and approve or request changes. Create a request straight from the checked-out branch.

    Conversations · CI checks · Approvals

  7. Connected to four providers

    Sign in to GitHub, GitLab.com, self-hosted GitLab with nested groups and HTTPS ports, Bitbucket Cloud, or Gitea — the request and review features work over each one the same way.

    GitHub · GitLab · Bitbucket Cloud · Gitea

  8. Nine themes, live previewed

    Built-in palettes from the onyx Git Workbench Dark to Clean Studio Light, repainted live as you choose — with per-area typography and text-size presets and graph-density controls.

    git-workbench-dark default · Individual resets

  9. A real terminal

    Ctrl+` opens xterm.js over a native pseudoterminal: full login shell, tab completion, ANSI color. Each repository keeps its own session and recent output, even while the drawer stays closed.

    Per-repo sessions · Resize or maximize · Restart on demand

  10. History that can be undone

    Restore points snapshot HEAD, the staged and unstaged split, and untracked files before resets, discards, and rewrites. Browse the reflog and branch off any entry to pull lost work back.

    Private refs · Safety branches · Range-diff comparison

  11. Optional AI, on your terms

    Recompose a commit message or explain a whole branch from its base. Choose any provider — including a local Ollama model — and nothing is ever pushed: drafts apply to local commits behind a restore point.

    Explicit apply · Encrypted keys · Local-first

  12. Native git, zero relearning

    Workbench shells out to the git binary you already installed and reads your .git folder directly. No proprietary database, no second login, no surprise rewrite of your settings.

    Async, non-blocking · Your config, untouched

  13. A built-in guide, 28 topics deep

    An interactive guide on board walks from first-run setup through rebases, worktrees, rerere memory, and sparse checkout — read the topic and apply it in the same window.

    First-run setup · Advanced workflows · In-app

  14. Tools for bigger repositories

    Split commits by file or hunk with a preview, retarget stacked branches with isolated restack previews, manage Git LFS rules and transfers, and pick sparse-checkout folders you can save as layouts.

    Git 2.37–2.38+ features · Clearly listed limits

Explore the feature guides →Compare Git clients →New here? Start with the setup guide →

d92b6e4 // worktrees

Three checkouts of
the real thing.

Captured straight from the app, not staged mockups. Scroll the strip, click a frame to open it at full size.

Captured with fictional demo repositories and identities — no customer repositories or credentials are shown.

c3d8a15 // appearance

Nine themes.
One live preview.

The palettes the app actually ships with. Tap a swatch — the workspace mock repaints itself, exactly the way the app does.

Every theme, font preset, and text size lives in Settings → Typography & Density, with individual resets — see thetypography guide.

f18a2b9 // reflog

Four moves, read
like a reflog.

The safe path is built in: choices are reversible, destructive actions snapshot first, and rewrites stay local until you push.

  1. HEAD@{3}step 01

    A short first run

    Pick a commit profile, preview your theme, and configure AI only if you want it. Skipping the setup changes nothing — every choice lives in Settings and can be redone later.

  2. HEAD@{2}step 02

    Open a repository

    Open an existing project or create one from the Home dashboard, pin it, and switch tabs between projects. Workbench reads .git through the system git, not a hidden index of its own.

  3. HEAD@{1}step 03

    Read, stage, and commit

    Follow the lanes to the commit you need, inspect its files, stage lines, hunks, or whole files, and write the commit message with or without an AI draft.

  4. HEAD@{0}step 04

    Push, review, and recover

    Fetch, pull, and push through your existing SSH keys or credential helper. Review requests with checks and approvals, and lean on restore points before any history rewrite — rewrites stay local until you push.

4c2d5e8 // keyboard-first

Everywhere without
a mouse.

Ctrl,Open settings
CtrlFFilter commits & branches
CtrlRRefresh repository status
CtrlTJump to Home & dashboard
CtrlSpaceToggle the terminal
EscClose viewer or dialog
Ctrl`Open the terminal drawer

7e9f1a3 // checkout

Your next commit
starts here.

One workbench, every desktop. Pick your platform and get straight to work. Free to use, with your existing Git setup.

Stable releasev1.4.1What's new

Ready for your next commit.

On Linux? Let your terminal handle it.

Detects your distribution and verifies SHA-512 checksums before installing.

bash — one-line install
curl -fsSL https://gitworkbench.github.io/install.sh | bash

e05f73c // good to know

A little clarity.
Before you commit.

The essentials on getting started, your existing setup, and keeping your code yours.

  • Is Git Workbench free?

    Yes. Git Workbench is open source under the MIT license: free for personal and commercial use. The source lives on GitHub, where you can file issues and contribute.

  • Do I have to sign in to anything?

    No. Local Git work needs no account at all. Provider sign-in is only needed for pull and merge request features, and AI assistance is configured separately if you want it.

  • Does it interfere with my Git setup?

    Git Workbench shells out to your installed system git and reads the repository directly. Your hooks, SSH keys, GPG signing, credential helper, and .gitconfig all keep working as they do on the command line.

  • Which hosting providers can I connect?

    GitHub, GitLab.com, self-hosted GitLab (including nested groups and HTTPS ports), Bitbucket Cloud, and Gitea are supported for request and review workflows. GitHub Enterprise and Bitbucket Data Center are not supported yet.

  • Are there minimum Git versions?

    The basics work with any recent git. Optional tools have floors: stacked-branch restacks need Git 2.38+, sparse-checkout editing needs 2.37+, and range-diff comparisons need 2.19+. The tools tell you when a prerequisite is missing.

  • What does the one-line installer do?

    It detects Debian-based, RPM-based, and Arch-based distributions, downloads the matching package from the public GitHub release, verifies its SHA-512 checksum, and hands off to your package manager, which keeps its usual confirmation prompt. Other distributions get a per-user AppImage with a desktop entry. Current Linux builds are x86_64.

  • How do updates work on each platform?

    The Windows installer and the Linux AppImage, deb, rpm, and Pacman builds can download and install updates from About → Software updates; package formats may ask for system authorization. Unsigned macOS builds are always updated manually from the release page.

  • What happens to my code with AI features?

    AI help is optional and configured per provider you choose — including a local Ollama instance, which keeps prompts on your machine. Requested prompts or selected code are sent only to that provider. Keys are stored encrypted outside renderer preferences and are never attached to commits.

08b4c62 // merge --into open-source

One license. Every line of it.

The whole app — React renderer, Electron main process, packaging pipeline, and this website — is MIT licensed. Explore the source, report an issue, or help make a workflow better. The application tests its Git operations in temporary repositories.

  • Contributions follow a short guide: fork, branch, commit, pull request.
  • Disposable demo repositories are one command away (npm run demo:create).
  • Everything runs against real git in temporary repositories during testing.
your workcommunity workmergedgit merge --no-ff