Skip to content

Commit History

The Commit History tab (also called the Git Graph) is a singleton tab that visualizes your repository’s commit history as an interactive graph with branch rails, merge curves, and commit metadata.

Graph View

The graph renders using a Canvas-DOM hybrid for performance. Each branch gets its own colored rail (vertical column), with:

  • Commit dots at rail positions
  • Connection lines showing parent-child relationships
  • Merge curves for non-linear flow
  • Branch and tag badges positioned on the graph
  • HEAD indicator showing the current branch

Commit Rows

To the right of the graph, each commit displays:

  • Short hash (7 characters)
  • Commit message (truncated)
  • Author name and avatar
  • Relative date
  • Ref badges (branches and tags with colored backgrounds)
  • Local indicator (for unpushed commits)

The Commit History uses a master-detail layout. In split mode, clicking a commit shows its detail inline. In list mode, clicking opens a separate Commit tab in the adjacent pane. Ctrl+Click always opens a separate tab.

Branch Scope

Toggle between:

  • All branches — shows the complete DAG with all branches
  • Current branch only — hides unrelated branches for a cleaner view

Toggle the find bar with F or Ctrl+F to search commits by message, author, or hash. Navigate between matches with N / Shift+N. All matches are highlighted on the graph, and jump buttons scroll to the first or last match.

Date Filtering

Filter commits by date range using the calendar picker to focus on a specific time period.

Linear View

Switch to linear view for a simplified single-rail timeline that collapses the complex DAG into a straight commit chain.

Shallow Repositories

If your repository is a shallow clone, a banner appears with:

  • Deepen — fetch more history incrementally
  • Unshallow — convert to a full clone

Pagination

The graph loads 200 commits at a time. Scroll to the bottom and click Load more to fetch additional commits.

Context Menu

Right-click a commit for:

  • Open commit detail tab
  • Create branch at this commit
  • Create tag at this commit
  • Cherry-pick
  • Reset (—soft / —mixed / —hard)
  • Copy commit hash
  • Show in Refs
  • Show in Reflog

Keyboard Shortcuts

ShortcutAction
J / KJump to next/previous major branch point
GGo to HEAD
FToggle find bar
Ctrl+FFocus search input
NNext find match
Shift+NPrevious find match
EnterSelect first find match
SpaceToggle branch scope
EscClose find bar