Repository navigation
History and the Commit Graph
The Branch Graph & History tab shows your commit history as a graph, with each branch drawn in its own lane color.
The commit list is virtualized, so it stays fast even in large repositories, and shows ref badges and author identity badges alongside each commit. Long branch and tag names are shortened to fit, with the full name on hover. Clicking a ref badge highlights that branch's ancestor chain and dims everything else.
The toolbar lets you filter by:
- Free-text search (subject, author, or SHA)
- Branch (current, all, or a specific one)
- Date range
- Author
- Commit type (if you use Conventional Commits) — including a dedicated filter for breaking changes
- A "hide merges" toggle
You can also copy the currently visible graph as ASCII text.
Right-click any commit, or use its More actions button, for:
- Copy SHA
- Check out — to look at an old version. You're then on a detached
HEAD: the header and status bar showHEADand the commit until you check out a branch again. - Branch here
- Export as a patch
- Reset to here (soft, mixed, or hard)
A hard reset always asks for explicit confirmation, since it discards uncommitted changes and any commits after that point.
Opening a commit shows its full detail: metadata, signature status, changed files, and Branch here / Cherry-pick / Revert actions. Clicking a changed file opens its diff in a large window, with the commit's other files beside it.
Cherry-pick and Revert also work on merge commits, using the changes the merge brought in — so a merged pull request can be backed out in one step.
New commits that arrive since you last looked briefly flash in the list. Quick Switch (⌘K/Ctrl+K) can jump straight to a commit you search for.
Getting started
Everyday work
- Working Copy & Staging
- The Diff Viewer
- Committing Changes
- Branches
- Remotes & Syncing
- Signing In to Remotes
- Worktrees & Submodules
- Search in Files
History
When things go wrong
Insights
Configuration