git rebase -i <name your branch's parent, probably "master">
O Vim abrirá e você verá algo assim:
pick ba95551 Commit_message_1
pick 3e357b5 Commit_message_for_commit_I_want_to_edit
pick 5eee414 Commit_message_3
pick c9a1f38 Commit_message_4
- Posicione o cursor (com o mouse / as teclas de seta / ou os comandos "h" "j" "k" "l) no início da linha para o commit que você deseja editar.
- Pressione "Inserir" para entrar no modo de edição
- Digite "e" para "editar"
- Exclua a palavra "pick" ("esc" "d" "w" para "delete word" ou apenas pressione delete algumas vezes)
Você deve ver algo assim:
pick ba95551 Commit_message_1
e 3e357b5 Commit_message_for_commit_I_want_to_edit
pick 5eee414 Commit_message_3
pick c9a1f38 Commit_message_4
Pressione "Esc" para entrar no modo de comando. Digite ": wq" para escrever, saia. Pressione Enter.
O Git agora reaplicará seus commits até esse ponto. Então você está livre para "editar commit anterior" como você faria normalmente:
git commit --amend
ou
git gui
O rebase interativo também permite que você reordene e remova os commits de sua escolha. Você deve estar ciente de que reescrever a história como essa afetará aqueles que a abandonaram. Veja Recuperando-se do rebase upstream .