O GitHub moveu os stacked pull requests para a prévia pública, permitindo que desenvolvedores dividam uma grande alteração em uma cadeia de PRs dependentes que podem ser revisados e mesclados de forma independente.
Por que o recurso é importante
Um único PR monolítico muitas vezes se transforma em uma revisão de um mês, forçando os revisores a vasculhar códigos não relacionados. Quando a branch base se move, essas alterações massivas ficam propensas a conflitos de merge que atrasam os lançamentos. Os stacked PRs resolvem ambos os problemas ao transformar um grande diff em uma série de diffs menores e focados, onde cada um se baseia no anterior.
Como funciona
Crie o primeiro PR contra a branch main, depois baseie o próximo PR no primeiro, o terceiro no segundo, e assim por diante. O GitHub rastreia os relacionamentos automaticamente: se você alterar o PR base, os PRs dependentes são atualizados para refletir o novo estado. Os revisores podem aprovar toda a pilha com um único clique ou aprovar camadas individuais.
- As revisões permanecem em um escopo restrito, tornando o feedback mais rápido.
- Os conflitos diminuem porque cada PR toca apenas no código introduzido em sua própria camada.
- A interface do usuário mostra a hierarquia da pilha, e a CLI do GitHub oferece um comando de linha única para criar uma série de stacked PRs.
gh pr create --title Feature A --base main
gh pr create --title Feature B --base feature-a
gh pr create --title Feature C --base feature-b
O exemplo de linha de comando cria três PRs vinculados, cada um dependente do anterior. O mesmo fluxo de trabalho está disponível através da interface web, onde você pode reordenar ou remover um PR da pilha sem quebrar os outros.
Quem pode se beneficiar
Grandes equipes de funcionalidades e mantenedores de código aberto podem entregar trabalhos incrementais sem expor os revisores a alterações irrelevantes. Gerentes de lançamento obtêm uma visão mais clara do que está pronto para ser enviado, pois cada camada da pilha pode ser mesclada em seu próprio cronograma.
Ressalvas a considerar
O recurso ainda está em prévia, portanto, pode mudar antes de um lançamento completo. As equipes precisarão adotar novos hábitos em relação ao branching e podem encontrar casos extremos ao fazer o rebase de uma pilha que já foi mesclada parcialmente. A documentação ainda está em crescimento, então os primeiros usuários podem gastar tempo extra aprendendo as pistas da interface.
O que observar a seguir
O GitHub provavelmente implementará uma integração mais estreita com code-owners e ferramentas de automação, e poderá exibir métricas sobre a redução de conflitos. Fique de olho na página de anúncio da prévia para atualizações sobre o cronograma de GA (disponibilidade geral).
Conclusão: Os stacked pull requests oferecem aos desenvolvedores uma maneira prática de domar alterações massivas, transformando um único PR pesado em conflitos em uma sequência gerenciável e amigável para revisão. Se o seu fluxo de trabalho sofre com revisões longas e dores de cabeça com merges, a prévia vale um teste.
