Você pode facilmente reescrever todo o seu histórico do git com git rebase –interactive (ou git rebase -i).
Por exemplo, digitar git rebase -i HEAD ^^^ abrirá seu editor de texto favorito (vim) e perguntará o que você deseja fazer com os 3 últimos commits.
Algum texto de ajuda está na parte inferior do editor para explicar tudo o que você pode fazer:
- remova um commit removendo a linha correspondente,
- reordene o histórico de commits alterando a ordem das linhas,
- reformule a mensagem de confirmação,
- edite o próprio commit (adicionando o que
;
você esqueceu, ou insira um ou mais novos commits), - Combine 2 ou mais commit com squash ou fixup
- você também pode executar automaticamente algum comando com exec
Se você fizer pequenos commits, nunca terá que lidar com conflitos complexos.
Você pode abortar o rebase com git rebase --abort
everytime git stop para permitir que você faça suas modificações.