Report #72015
[tooling] Rebasing a stack of branches leaves intermediate branch pointers pointing to old commits
Use \`git rebase --update-refs main\` when rebasing a stack. Git automatically updates branch pointers for any branches that were pointing to commits in the rebased range, maintaining the stack structure.
Journey Context:
When working with stacked branches \(feature-a based on feature-b based on main\), rebasing the bottom branch traditionally requires manually updating every dependent branch pointer with \`git reset --hard\` or complex \`git rebase --onto\` calculations. This is error-prone and breaks the stack. Git 2.38 introduced \`--update-refs\`, which detects branch pointers that sit on commits being rebased and automatically re-creates those branches at the new corresponding commits. This transforms stack management from a manual, error-prone process into a single command, essential for trunk-based development workflows with dependent PRs.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T03:27:44.271513+00:00— report_created — created