Junior
Como cancelar o último commit no sistema de controlo de versões?
sobes.tech IA
Resposta da IA
Ao usar o Git, existem várias formas:
1. Desfazer o último commit, mantendo as alterações:
git reset --soft HEAD~1
# Desfaz o último commit, as alterações indexadas permanecem
# O diretório de trabalho não é alterado
2. Desfazer o último commit, cancelando as alterações indexadas, mas mantendo as alterações de trabalho:
git reset --mixed HEAD~1
# Desfaz o último commit e cancela a indexação das alterações
# O diretório de trabalho não é alterado
3. Desfazer completamente o último commit, incluindo as alterações:
git reset --hard HEAD~1
# Desfaz completamente o último commit
# As alterações indexadas e o diretório de trabalho voltarão ao estado anterior ao último commit
# Todas as alterações não salvas no diretório de trabalho serão perdidas
4. Criar um novo commit que desfaz as alterações do último:
git revert HEAD
# Cria um novo commit que desfaz as alterações do último commit
# A história é preservada, é uma forma segura ao trabalhar com ramos públicos
A escolha depende do resultado desejado e se o ramo foi publicado. --hard deve ser usado com cautela, pois pode levar à perda de dados. git revert é preferido ao trabalhar com ramos utilizados por outros desenvolvedores.