Git: reescreva sua história

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 --aborteverytime git stop para permitir que você faça suas modificações.