Stacked pull requests — when the workflow is worth adopting
A large pull request sits waiting for review, and the next piece of work cannot start on top of it. Stacked pull requests solve that by splitting the change into small PRs that keep their dependency order. Here is when the workflow earns its cost. Prices checked November 2026.
AI Tools Hub Editorial · published · updated
The problem being solved
One feature can produce a pull request over a thousand lines. No reviewer can find the time, so it sits for two days. Meanwhile the next task has to be started on top of an unmerged branch, and every later correction gets harder.
Stacking turns that thousand-line PR into five of two hundred lines, each based on the one before. Reviewers can engage with two hundred lines, merging proceeds from the bottom, and the bases of the PRs above follow automatically.
What Graphite actually sells
| Plan | Price | Includes |
|---|---|---|
| Hobby | Free | Personal repos, CLI, MCP, VS Code extension, limited AI review |
| Starter | $20/user/mo (annual) | All repos in a GitHub org, Slack notifications, team metrics |
| Team | $40/user/mo (annual) | Unlimited AI review, review customisation, automation, merge queue |
| Enterprise | Contact sales | Merge queue configuration, SAML, audit logs, SLA |
Stacking itself needs nothing but Git: chain the branches and rebase the ones above when a lower one changes. What Graphite sells is doing that rebase chain automatically and giving you a view of the stack.
When it is worth adopting
- Pull requests routinely exceed a few hundred lines
- Work stalls waiting for review several times a week
- Reviewers are scarce, so PRs wait before anyone starts
- Everyone on the team is comfortable with Git branching
The fourth is a precondition, not a nice-to-have. Stacking makes Git operations one step more complex, and a team member who does not understand what rebase does will eventually destroy history while resolving a conflict. Budget time to go over rebase behaviour before adopting.
When it will not help
- PRs are already small (100 lines is normal) → there is no problem to solve
- Reviews come back within hours → there is no waiting problem
- Solo development → nothing waits on review, though small PRs are still a good habit
- Squash merge is mandatory → stacked history needs additional design
The third deserves a note: even alone, keeping PRs small has value. Tracing a change later is easier across five 200-line PRs than one of a thousand. Whether you adopt the tool is separate from whether you adopt the habit.
How to split a change
The benefit depends entirely on where you cut. Splitting mechanically by line count produces intermediate PRs that do not build, which cannot be reviewed. Split like this instead.
- 1. Add types and interfaces — existing behaviour unchanged
- 2. Add the implementation — not yet called
- 3. Switch existing code to call it
- 4. Delete the old implementation
Each of those builds and passes tests on its own. 'Could this merge independently?' is the test of whether the split is correct.
Frequently asked questions
Do we need the paid plan?
The free Hobby tier covers personal repositories and the CLI, which is enough to learn the workflow. Organisation-wide use and the merge queue are on the paid tiers.
Does this replace AI code review?
No — it makes review tractable by keeping the units small. The two are complementary; Graphite includes AI review on its Team tier.
Related
More articles
Opinion
Why AI rollouts fail in Japanese companies — four structural reasons
For business
Enterprise AI rollout checklist — SOC 2, ISO 27001, DPAs and personal data
For business
Japanese-developed LLMs for business — ELYZA, Sakana AI, NTT tsuzumi and PLaMo
Comparison
AI coding tools compared — Cursor, Copilot, Claude Code, Windsurf and Codeium