Git: Desfazendo commits

Quando precisamos desfazer algum commit feito de forma incorreta ou por outro motivo. A seguir alguns comandos Git que vão te ajudar a resolver este problema. Utilizando o modo --soft como argumento git reset --soft HEAD~ Neste caso o último commit será desfeito na atual branch (HEAD). O arquivo não será alterado de acordo com as alterações anteriores ao commit. O que vai acontecer é que o arquivo ficará disponível para um novo commit. Se você executar o comando git status Será possível ver o(s) arquivo(s) na seção "changes to be committed", ou seja, o commit foi desfeito e está disponível para ser comitado. Podemos melhorar este comando passando o número de commits em que você deseja desfazer. Por ex: git reset --soft HEAD~3 O número 3 fará com que os últimos 3 commits sejam desfeitos. É bem simples. Utilizando o modo --hard como argumento git reset --hard HEAD~ O modo --hard possibilita que além de desfazer o commit, o arquivo seja alterado com base nas alterações anteriores ao commit. Caso precise desfazer um ou mais commits conforme mostrado no primeiro exemplo, a regra é a mesma. Existem outros modos de reset, veja a documentação oficial do Git

Git: Desfazendo commits