HOWTO · Git

Remover Commit de um Branch no Git

Este tutorial demonstra como remover o commit de um branch no Git usando diferentes comandos.

Quando começamos a trabalhar em um projeto enorme, frequentemente encontramos situações em que precisamos atualizar, remover ou adicionar peças em um branch. A manutenção de mensagens de confirmação pode ser um obstáculo para a equipe se a duração do desenvolvimento for estendida por um período maior com um prazo estrito.

Portanto, para tornar a manutenção do histórico de commits conciso mais simples, aprenderemos o uso de algumas condições comuns neste artigo que podemos examinar enquanto trabalhamos com Git.

Git nos fornece alguns comandos para deletar nossos commits anteriores do branch. As estratégias e comandos disponíveis são discutidos abaixo neste artigo.

Existem algumas maneiras no Git de deletar ou remover um commit do branch. O primeiro passo é decidir qual truque é melhor para nosso cenário, dependendo se colocamos ou não nosso commit no repositório.

Antes de tentar fazer isso, devemos notar que a execução desses comandos irá deletar nossas alterações no diretório de trabalho. E também, note que para salvar as alterações separadamente que gostaríamos de ter no repositório no futuro, git reset é um comando que redefine nosso diretório de trabalho para o commit especificado.

Remova as alterações se não for enviado ao repositório no Git

No cenário em que não enviarmos nossas alterações para o repositório, o seguinte comando será usado.

git reset --hard HEAD~1

Isso eliminará todas as mudanças no diretório de trabalho e moverá o HEAD para o commit antes do HEAD.

Suponha que tenhamos que deletar os commits em uma direção ascendente até um commit particular. Nesse caso, executaremos o comando git log na linha de comando para encontrar o ID de confirmação específico e, em seguida, executaremos o seguinte:

git reset --hard <sha1-commit-id>

Isso omitirá todas as mudanças no diretório de trabalho e moverá HEAD para o commit escolhido.

Remova as alterações se for enviado para o repositório no Git

No outro cenário, quando já enviamos nossas alterações, precisamos executar o seguinte comando.

git push origin HEAD --force 

Observe que, se outros retiraram o respectivo branch, começar com o branch mais recente seria melhor. Se não fizermos isso quando outra pessoa puxou, isso combinará com seu trabalho e o faremos empurrar de volta mais uma vez.

Se encontrarmos uma situação em que precisamos encontrar um commit que excluímos, ele estará presente em git reflog, a menos que tenhamos o lixo coletado em nosso repositório.

Remover Compromisso Excluído

Para remover um commit excluído do branch, podemos usar o seguinte comando :.

git reset --soft HEAD^

Este comando irá reverter ou redefinir todas as mudanças do commit anterior e levá-lo de volta para um novo commit no repositório.