Skip to content

rung

Stacked PRs made simple. Build, sync, and ship dependent branches with ease.

Why Stacked PRs?

Large features are hard to review. Stacked PRs let you break them into small, focused changes that build on each other—making code review faster and merging safer.

Small, Focused PRs

Break large features into reviewable chunks. Each PR does one thing well.

Fast Reviews

Reviewers can approve smaller changes quickly. No more 1000-line review bottlenecks.

Easy Rebasing

When parent branches change, rung sync automatically rebases all children with one command.

GitHub Native

Creates real GitHub PRs with automatic stack navigation comments. Works with your existing workflow.

Quick Start

Terminal window
# Install rung
cargo install rung-cli
# Initialize in your repo
rung init
# Create your first stack
rung create -m "feat: add user model"
# ... make changes ...
rung create -m "feat: add user API"
# ... make more changes ...
rung create -m "feat: add user tests"
# Submit all as PRs
rung submit
# View your stack
rung status

See It In Action

$ rung status
Stack
──────────────────────────────────────────────────
● feat-add-user-model #41 ← main
● feat-add-user-api #42 ← feat-add-user-model
● ▶ feat-add-user-tests #43 ← feat-add-user-api
──────────────────────────────────────────────────
● synced ● needs sync ● conflict

When the base branch moves forward, sync your entire stack:

Terminal window
$ rung sync
Synced feat-add-user-model (rebased 3 commits)
Synced feat-add-user-api (rebased 2 commits)
Synced feat-add-user-tests (rebased 1 commit)

Features

  • Branch Tracking — Remembers which branches depend on which
  • Automatic Rebasing — One command syncs your entire stack
  • Conflict Handling — Pause, resolve, continue with --continue / --abort
  • PR Management — Creates and updates PRs with stack navigation
  • Stack Comments — Automatic comments showing the PR hierarchy
  • Undo Support — Made a mistake? rung undo restores your stack
  • JSON Output--json flag for CI/CD integration

Requirements

  • Git 2.x
  • GitHub CLI (gh) authenticated, or GITHUB_TOKEN environment variable
  • Rust 1.85+ (for building from source)