Este guia explicará como você pode desfazer um compromisso no Git.
Git reverte o último compromisso (alterações de reserva)
Para desfazer um compromisso anterior no Git, usamos o comando Git Redefinir. Além disso, podemos usar a cabeça, que é um ponteiro para sua última confirmação em um ramo de destino.
Para desfazer a última confirmação, preservando as alterações feitas nos arquivos, use o Git Redefinir com o parâmetro -Soft.
Um exemplo é como mostrado:
Redefinição Git -Cabeça de Soft ~ 1
O comando acima move o ramo para o commit anterior. Você pode verificar se o desfazer é bem -sucedido executando o comando:
$ git status
Git reverter Last Commit (Descartar mudanças)
Em alguns casos, você pode reverter sua última confirmação e descartar todas as alterações feitas no repositório.
Você pode usar o comando git reset com o parâmetro -Hard.
Um exemplo é como mostrado:
$ git Reinicia -Cabeça difícil ~ 1
O comando acima deve desfazer sua última confirmação e descartar todas as mudanças feitas.
Observe que o comando acima é irreversível. Use com cuidado.
Git reverter para um compromisso específico
Suponha que você queira reverter para um compromisso que está muito atrasado. Você pode determinar manualmente o número de começos que vêm antes e correr:
$ git Reinicia -cabeça macia ~ 100
No entanto, o método acima não é aplicável. Em vez disso, você deve determinar o número de começos e depois reverter para ele.
Você pode resolver isso usando um hash de confirmação. Um hash de compromisso é um identificador criptograficamente único que identifica um compromisso específico em um determinado repositório.
Para ver a história de seus compromissos, use o comando:
$ git log
O comando deve devolver o histórico dos compromissos, incluindo o autor, a data e a mensagem de confirmação.
Um exemplo de saída é como mostrado:
Comprometa 532570d
Autor: Artemis37 <[email protected]>
Data: sex, 13 de maio 00:42:28 2022 +0300
Adicione código fonte e Conserta.
Observe o hash de confirmação.
Por simplicidade, você pode buscar o hash e a mensagem de compromisso usando o comando:
$ git log --oneeline
Isso deve retornar a saída como:
O comando acima retorna um resumo das confirmações.
Você pode usar este hash para reverter para um commit específico.
Um exemplo é como mostrado:
$ git reset -hard 532570d
O comando acima deve reverter para o commit com o hash especificado.
Git altere o último commit
Se você deseja editar o último compromisso em vez de reverter, pode usar a bandeira Git Commit -End.
Por exemplo, para alterar a última mensagem de compromisso, podemos fazer o seguinte:
$ git commit --emend -m “nova mensagem de confirmação.”
Conclusão
Com isso, você tem uma maneira de desfazer seu compromisso com um compromisso específico. Use o reset git cometido com cuidado, pois é irreversível.