# Maintaining shadow branches for GitHub PRs

DevFeed: [Maintaining shadow branches for GitHub PRs](<https://devfeed.tech/articles/maintaining-shadow-branches-for-github-prs-31120.md>)

Original publisher: [Read original article](<https://maskray.me/blog/2026-01-22-maintaining-shadow-branches-for-github-prs>)

Published: 2026-01-22T08:00:00Z

Content type: article

Language: en

Sources: [MaskRay](<https://devfeed.tech/sources/maskray.md>)

Topics: [GitHub](<https://devfeed.tech/topics/github.md>), [Pull Request](<https://devfeed.tech/topics/pull-request.md>), [Vibe coding](<https://devfeed.tech/topics/vibe-coding.md>), [Tool](<https://devfeed.tech/topics/tool.md>), [LLVM](<https://devfeed.tech/topics/llvm.md>)

Tags: [git](<https://devfeed.tech/tags/git.md>), [github](<https://devfeed.tech/tags/github.md>), [pull-request](<https://devfeed.tech/tags/pull-request.md>), [text](<https://devfeed.tech/tags/text.md>), [tool](<https://devfeed.tech/tags/tool.md>), [vibe-coding](<https://devfeed.tech/tags/vibe-coding.md>), [workflow](<https://devfeed.tech/tags/workflow.md>)

## AI overview

The author describes pr-shadow, a tool created with vibe coding that maintains a fast-forward-only shadow branch for GitHub pull requests. Developers can rebase, amend, or squash locally while reviewers see stable diffs and the workflow avoids force-pushing problems.

## Source excerpt

I've created pr-shadow with vibe coding, a tool that maintains a shadow branch for GitHub pull requests (PR) that never requires force-pushing. This addresses pain points I described in Reflections on LLVM's switch to GitHub pull requests#Patch evolution.