gitstack 2.13.1

Git history viewer with insights - Author stats, file heatmap, code ownership
Documentation

gitstack

Crates.io License: MIT

Git history viewer focused on analysis and insights

Why gitstack?

Tool Focus Best For
lazygit Git operations Staging, rebasing, cherry-picking
tig Log browsing Quick commit viewing
keifu Graph visualization Beautiful branch display
gitstack Analysis & Insights Understanding your codebase

gitstack answers questions like:

  • "Who has been working on this module?"
  • "Which files are changed most frequently?"
  • "Are there any stale branches that should be cleaned up?"

Install

cargo install gitstack

Or build from source:

git clone https://github.com/Hiro-Chiba/gitstack
cd gitstack
cargo install --path .

Features

Analysis Suite

Press a single key to get instant insights:

Key View What it shows
A Author Stats Commits, lines added/deleted per author
H Heatmap Most frequently changed files
T Timeline Commit activity by hour/day
O Ownership Code ownership by file/directory
t Topology Branch health and stale branch detection

Smart Filter

Powerful filtering with intuitive syntax:

/author:john              # Filter by author
/since:7days              # Recent commits
/until:2024-01-01         # Before date
/message:fix              # Search commit messages
/file:src/main.rs         # Commits touching specific file
/hash:abc123..def456      # Commit range

Combine filters: /author:john since:1week file:*.rs

2-Pane Layout

Toggle with v to see commit details alongside the graph:

┌─ Graph ─────────────────┬─ Details ────────────────────┐
│ ● abc123 feat: auth     │ Author: John Doe             │
│ │                       │ Date: 2024-01-15 10:30       │
│ ○ def456 fix: bug       │                              │
│ │                       │ feat: add authentication     │
│ ◆ ghi789 Merge          │                              │
│ │                       │ - Add login endpoint         │
│ ○ jkl012 init           │ - Add JWT validation         │
└─────────────────────────┴──────────────────────────────┘

Branch Graph

Color-coded branch visualization with smart color assignment:

  • Adjacent lanes never share the same color
  • Branches from the same fork point get distinct colors
  • Clear merge visualization with proper line connections

Comparison

Feature gitstack keifu lazygit tig
Author statistics
File heatmap
Code ownership
Branch health / topology
Smart filter syntax
2-pane layout
Commit range filter
Branch graph
Staging/commit
Interactive rebase

Keybindings

Navigation

Key Action
j / Move down
k / Move up
g Go to top
G Go to bottom
Ctrl+d Page down
Ctrl+u Page up

Views

Key Action
Enter Show commit details / diff
P Show file patch (in detail view)
v Toggle 2-pane layout
A Author statistics
H File heatmap
T Commit timeline
O Code ownership
t Branch topology

Actions

Key Action
/ Open filter
Esc Clear filter / close view
y Copy commit hash
b Show blame view
s Open status view
F Fetch from remote
? Show help
q Quit

Configuration

Config file: ~/.config/gitstack/config.toml

[display]
date_format = "relative"  # or "absolute"
show_stats = true

[keybindings]
quit = "q"
help = "?"

License

MIT


日本語版 · Design Doc