Git Graph

Visualize branch history, commits, and merges in an interactive graph — see your repository's story at a glance.

Opening Git Graph

Open a Git Graph tile from the context menu, or run from a terminal:

# Open git graph for the current repo
suwu open --git-graph .

# Open for a specific directory
suwu open --git-graph /path/to/repo

What You See

The graph shows your repository's commit history as a visual timeline:

  • Branches — each branch is a colored lane.
  • Commits — dots on the graph with hash, message, author, and date.
  • Merges — lines connecting branches where merges occurred.
  • Tags — displayed next to tagged commits.
  • HEAD — highlighted to show your current position.

Interaction

  • Click a commit to see its full diff in a side panel.
  • Click a branch label to highlight that branch's history.
  • Scroll to load more history (lazy-loaded for large repos).
  • Search by commit message, author, or hash.

Commit Details

Clicking a commit opens a detail view showing:

  • Full hash and abbreviated hash.
  • Author and date.
  • Commit message — full text.
  • Parent commits — clickable links.
  • Diff — file-level changes with syntax highlighting.
Tip

Open Git Graph in a wide tile to see more branches at once. The graph adapts to the tile width.

Repository Tabs

A Git Graph tile can track several repositories at once. Each tab is a complete git graph for one repository — the commit list, the worktree browser, the All branches toggle, expanded commit rows, the comparison tabs and the auto-refresh interval are all per tab.

  • Add — click + at the right of the tab strip (or the + button in the tile toolbar) and pick a folder.
  • Activate — click a tab, or press Alt+1…9.
  • Close — click ×, middle-click a tab, right-click for Close other tabs / Close all tabs.
  • Change repo — retargets the active tab; picking a repository that is already open switches to that tab instead of duplicating it.

Closing the last tab leaves the tile on the folder picker, ready for a new repository. Tabs, the active tab and each tab's view are restored with the session, so a reload or a space switch brings back exactly what you had.

Tip

Only the active tab loads commits, so tracking a dozen repositories costs one request. History beyond the first 100 commits is re-fetched when you switch back to a tab.

Keyboard Shortcuts

Action Shortcut
Search commits Ctrl+F
Refresh graph Ctrl+R
Load more history Scroll to bottom
Close detail panel Esc
Select repository tab Alt+1…9
Previous / next repository tab Alt+[ / Alt+]
New repository tab Alt+T
Close repository tab Alt+W

Large Repositories

For repositories with thousands of commits, Git Graph loads history in batches. Scroll to the bottom to load the next batch. The initial view shows the most recent 100 commits.