Glossary

Stacked-diff terms, defined.

The vocabulary of stacked pull requests — and the specific commands stkd uses for each one. New to the idea? Start with what are stacked diffs.

Stacked diff
A single logical change expressed as a chain of small, dependent branches — each opened as its own pull request. Reviewers approve one link at a time while the author keeps building on top. Also called a stack or a stacked pull request.
Stack
The ordered chain of dependent branches that make up a stacked diff, from the branch nearest the trunk up to the one you are currently working on. stkd stores the chain as parent metadata in git config.
Restack
Rebasing every branch in a stack onto the latest tip of its parent so the chain stays in sync after an edit or a merge. stkd's gt restack walks the whole stack automatically instead of you running git rebase --onto branch by branch.
Base branch
The parent a given branch is stacked on top of. The base of the bottom branch is the trunk; the base of every branch above it is the branch immediately below it in the stack.
Trunk
The long-lived integration branch a stack ultimately targets — usually main or master. When the bottom of a stack merges into the trunk, stkd restacks the remaining branches onto the updated trunk.
Submit
Creating or updating the pull requests (GitHub) or merge requests (GitLab) for a stack. gt submit --stack opens one PR per branch, cross-links them, and posts the canonical 'Stacked PRs' navigation comment reviewers expect.
Land
Merging a branch at the bottom of a stack into its base and cleaning up. gt land merges the ready PR, then restacks and retargets the branches that sat above it so the rest of the stack keeps flowing.
TUI
A terminal user interface. gt tui is stkd's keyboard-driven stack browser: navigate branches with vim-style keys, view live PR status, and open an inline diff without leaving the terminal.
MCP
The Model Context Protocol, an open standard that lets AI agents call external tools with typed schemas. stkd-mcp exposes stkd's commands as MCP tools so agents like Claude Code and Cursor can drive stacks natively.
DAG
A directed acyclic graph. stkd models your stacks as a DAG of parent/child branch relationships, which is what lets it restack every dependent branch correctly when one of them changes.
Graphite-compatible
stkd uses the same gt command grammar and reads and writes the same branch.<name>.parent git-config metadata that Graphite stores, so existing Graphite repos and stacks work with stkd without re-tracking.
Merge request
GitLab's equivalent of a GitHub pull request. stkd treats GitHub PRs and GitLab MRs as peers, so gt submit --stack opens and links the right object type on whichever provider — including self-hosted GitLab — the repo uses.

Ready to stack your next change?

Install stkd in under a minute. Apache-2.0, single binary, every major platform.