O Que É uma Feature Branch?
Uma feature branch é uma branch dedicada a construir uma única feature ou correção em isolamento até estar pronta para fazer merge na linha principal.
Uma feature branch é o cavalo de batalha do dia a dia do branching. Você cria uma para um trabalho específico, a desenvolve sem perturbar a branch principal, passa por review e testes, e então faz merge. Manter as feature branches pequenas e de vida curta é a chave para um workflow tranquilo.
Para que serve uma feature branch
Uma feature branch isola o trabalho de uma mudança para que a branch principal permaneça estável. Você pode experimentar, commitar trabalho em andamento e iterar sem afetar mais ninguém. Quando a feature está pronta e verificada, ela faz merge de volta, geralmente através de um pull request.
Criando uma feature branch
Você sai da linha principal em uma branch com um nome descritivo, faz o trabalho e então faz merge.
git switch -c feature/dark-mode
# implement, commit, push
gh pr create --base mainMantendo-a saudável
Feature branches de vida curta fazem merge limpo; as longas se afastam da main e geram conflitos. Puxar a main mais recente regularmente, via merge ou rebase, mantém uma feature branch próxima da realidade e torna seu merge eventual indolor.
Feature branches em CI/CD
O CI roda em cada push de feature branch e pull request, dando feedback rápido antes que a mudança chegue à main. Os pipelines muitas vezes fazem menos nas feature branches, testes mas sem deploy, reservando o deployment para a main. A branch protection garante que uma feature branch não possa fazer merge até que seus checks passem.
Dicas de feature branch
- Use uma feature branch por mudança lógica.
- Mantenha as branches de vida curta para evitar drift e conflitos.
- Sincronize com a main com frequência via merge ou rebase.
- Deixe o CI verificar a branch antes que ela faça merge.
Principais conclusões
- Uma feature branch isola o trabalho de uma mudança até estar pronta.
- Branches de vida curta fazem merge limpo; as longas causam conflitos.
- O CI verifica cada feature branch antes que ela faça merge na main.