Skip to main content
gx graph displays a tree visualization of all branches and their parent-child relationships, with status indicators for the current branch, merged branches, and orphaned branches.

Usage

Example Output

Indicators

Tree Structure

  • Roots are branches that are not children of any other branch (typically main/master)
  • Children are indented under their parent with tree-drawing characters (\|-- and `--)
  • The main branch is always listed first among roots
  • Children within each parent are sorted alphabetically
  • Only branches explicitly created with gx stack appear in the graph. There is no auto-discovery of relationships

Orphaned Branches

Branches whose recorded parent no longer exists are shown in a separate “Orphaned Branches” section with a warning indicator. These can be cleaned up with gx nuke --orphans.
Run gx graph after creating branches to verify the stack looks correct. Only branches registered with gx stack will appear.
  • The tree is built from .git/gx/stack.json using only explicitly stacked branches
  • BuildTree is read-only and never writes to stack.json
  • Ahead/behind counts are computed for each branch relative to its configured parent
  • Merged status is checked with git branch --merged <parent>