1.1 KiB
title | localeTitle |
---|---|
How to Squash Multiple Commits into One with Git | Como esmagar vários commits em um com o Git |
Este é um recurso incrível de rebase
que pode ser usado no modo interactive
. Para esmagar os últimos n commits em um, execute o seguinte comando:
git rebase -i HEAD~n
Isso abrirá um editor de texto com algo semelhante ao seguinte:
pick commit_1
pick commit_2
pick commit_3
...
pick commit_n
# Bunch of comments
Deixe o primeiro commit sozinho e mude o restante das pick
s para squash
. Salve e saia do editor.
Então, se você quiser esmagar os últimos três commits, primeiro você executará o git rebase -i HEAD~3
e então você vai querer editar seus commits para parecer algo assim:
pick dd661ba Commit 1
squash 71f5fee Commit 2
squash f4b4bf1 Commit 3
Se você já empurrou para um controle remoto antes de esmagar seus commits, você terá que empurrar para o controle remoto novamente, com o sinalizador -f
, caso contrário o git lançará um erro em você.
É altamente recomendável que você leia as informações no arquivo aberto, pois há muitas coisas que você pode fazer.