Dominando o Git Rebase
O comando git rebase
é frequentemente temido por desenvolvedores, mas quando usado corretamente, pode ser uma ferramenta poderosa para manter um histórico de commits limpo e organizado.
O que é rebase e quando usar
Diferente do merge
, que cria um novo commit combinando duas branches, o rebase
reescreve o histórico de commits, aplicando-os em uma nova base. Isso resulta em um histórico linear e mais limpo.
Use rebase quando:
- Quiser manter um histórico de projeto linear
- Estiver trabalhando em uma branch de feature e precisar atualizar com as mudanças da main
- Quiser limpar commits antes de mesclar à branch principal
Evite rebase quando:
- A branch já foi compartilhada publicamente
- Não entender completamente as implicações
Rebase na prática
Vamos ver um exemplo prático:
# Estando na sua branch de feature
git checkout feature
# Atualizando com as mudanças da main
git rebase main
# Se houver conflitos, resolva-os e continue
git add .
git rebase --continue
Rebase interativo: a ferramenta secreta
O rebase interativo permite reorganizar, combinar e modificar commits:
git rebase -i HEAD~5 # Interagir com os últimos 5 commits
Isso abrirá um editor com opções como:
pick
: manter o commitsquash
: combinar com o commit anteriorreword
: alterar a mensagemdrop
: remover o commit
Conclusão
O rebase é uma ferramenta poderosa que, quando usada com cuidado, pode transformar seu fluxo de trabalho com Git. A chave é entender quando e como aplicá-lo.
Para mais conteúdo sobre Git em português, confira o Git Pie.