Git Rebase
Última atualização
git rebase move os commits da sua branch para que sejam reaplicados sobre outra branch, produzindo um histórico reto e linear em vez de um commit de merge. O rebase interativo (-i) vai além, permitindo combinar, reordenar, editar ou descartar commits. Como o rebasing reescreve os commits, faça isso apenas em trabalho que você ainda não compartilhou.
Experimente isso no terminal playground: um shell real no seu navegador, sem nada para instalar.
Sintaxe
| Command | What it does |
|---|---|
git rebase main | Reaplica seus commits sobre main |
git rebase -i HEAD~3 | Edita interativamente os últimos 3 commits |
git rebase --onto main old new | Move um intervalo de commits para main |
git rebase --continue | Retoma após resolver conflitos |
git rebase --abort | Cancela o rebase e restaura a branch |
git pull --rebase | Faz pull e rebase em vez de merge |
Palavras-chave do rebase interativo
No editor que o -i abre, altere pick para uma destas.
| Keyword | What it does |
|---|---|
pick | Mantém o commit |
reword | Mantém o commit e edita sua mensagem |
squash | Funde no commit anterior e combina as mensagens |
fixup | Funde, mas descarta esta mensagem |
drop | Remove o commit por completo |
Perguntas frequentes sobre git rebase
O que o git rebase faz?
O que é o rebase interativo?
git rebase -i <base> abre um editor que lista os commits desde <base>, onde você pode reordená-los, fazer squash de vários em um, fazer reword das mensagens, fazer edit de um commit ou drop para descartá-lo. É a principal ferramenta para limpar uma série bagunçada de commits antes de compartilhá-los.Qual é a regra de ouro do rebasing?
Como corrijo ou cancelo um rebase com conflitos?
git add neles e então execute git rebase --continue. Use git rebase --skip para descartar o commit atual, ou git rebase --abort para cancelar por completo e devolver a branch ao estado anterior ao início do rebase.Posso praticar isso online?
git rebase em um shell real no seu navegador, sem nada para instalar. O curso interativo e gratuito de Git da Coddy também cobre o rebasing passo a passo.