Skip to content

v0.2.0

Latest

Choose a tag to compare

@github-actions github-actions released this 02 Oct 20:28
d4ab7ab

gh-stack is a GitHub CLI extension for managing stacked branches and pull requests. Learn more about GitHub Stacked PRs here.

View the Quick Start guide to get started.

Install the extension with:

gh extension install github/gh-stack

Or upgrade to the latest version with:

gh extension upgrade stack

What's new in v0.2.0

Added

  • Git worktree support: Stack tracking now belongs to the repository instead of the directory where you ran gh stack init. A single shared catalog (<common-dir>/gh-stack) is read by every command, so worktrees can hold independent stacks — or different branches of the same stack — without losing tracking when a checkout is removed. Existing per-directory tracking files are migrated automatically when their definitions agree or describe separate stacks (backups are preserved; conflicting definitions stop with guidance), and init / add can adopt a branch checked out in another worktree without switching either checkout. Catalog writes are now atomic, so a command can never read a half-written file.
  • Cross-worktree rebase, sync, and modify: These commands can now operate on a stack whose branches are spread across different worktrees — each change runs in the checkout that holds the branch, so you no longer need to gather the whole stack into one directory. Affected worktrees are checked for uncommitted files or unfinished Git operations before any branch is rewritten, conflicts are resolved in the named checkout, and --continue / --abort work from any worktree via a shared recovery record. Requires Git 2.36+; gh-stack never creates, removes, or auto-stashes worktrees.
  • Upgrade notifier: gh-stack now nudges you to upgrade when a newer stable release is available, pointing you to gh extension upgrade stack without upgrading automatically. The check runs in the background (never blocking a command), is cached and rate-limited to at most once every 24 hours, and leaves stdout, JSON output, and exit codes untouched. Set GH_STACK_NO_UPDATE_NOTIFIER=1 to disable it; local/development, prerelease, and pinned installs are excluded.

Changelog

Full Diff: v0.1.1...v0.2.0