O que é Trunk-Based Development?
Trunk-Based Development é uma prática de versionamento em que os desenvolvedores integram seu trabalho com frequência em um único ramo principal (o "trunk"/main), usando branches de curtíssima duração ou nenhuma. O objetivo é evitar branches longas que divergem e geram integrações dolorosas, mantendo o código sempre integrável e entregável. É um dos pilares da integração contínua de verdade: integrar "continuamente" significa fundir pequenas mudanças ao trunk várias vezes ao dia, não manter feature branches por semanas. Funcionalidades incompletas convivem no trunk escondidas atrás de feature flags, permitindo entrega contínua sem expor o que não está pronto.
Na prática
Os desenvolvedores fazem commits pequenos e frequentes diretamente no trunk (ou via branches que vivem horas, não dias), protegidos por testes automatizados e flags. É a base técnica que sustenta CI/CD e práticas de alto desempenho de entrega (DORA).
O que acontece quando falta
Branches de longa duração divergem cada vez mais do trunk; quando finalmente integradas, geram conflitos enormes e arriscados ("merge hell"). A integração contínua vira ficção, o lead time cresce e cada release acumula semanas de trabalho não verificado.
Termos relacionados
Perguntas frequentes
O que é Trunk-Based Development?
Trunk-Based Development é uma prática de versionamento em que os desenvolvedores integram seu trabalho com frequência em um único ramo principal (o "trunk"/main), usando branches de curtíssima duração ou nenhuma.
Como Trunk-Based Development funciona na prática?
Os desenvolvedores fazem commits pequenos e frequentes diretamente no trunk (ou via branches que vivem horas, não dias), protegidos por testes automatizados e flags.
O que acontece quando Trunk-Based Development falta?
Branches de longa duração divergem cada vez mais do trunk; quando finalmente integradas, geram conflitos enormes e arriscados ("merge hell").