Sobes.tech
Junior

Cum să anulați ultimul commit în sistemul de control al versiunilor?

sobes.tech AI

Răspuns de la AI

Atunci când folosiți Git, există mai multe modalități:

1. Anulați ultimul commit păstrând modificările:

git reset --soft HEAD~1
# Anulează ultimul commit, modificările indexate rămân
# Directorul de lucru nu se schimbă

2. Anulați ultimul commit, anulând modificările indexate, dar păstrând modificările de lucru:

git reset --mixed HEAD~1
# Anulează ultimul commit și elimină indexarea modificărilor
# Directorul de lucru nu se schimbă

3. Anulați complet ultimul commit, inclusiv modificările:

git reset --hard HEAD~1
# Anulează complet ultimul commit
# Modificările indexate și directorul de lucru vor reveni la starea anterioară ultimului commit
# Toate modificările nesalvate din directorul de lucru vor fi pierdute

4. Creați un nou commit care anulează modificările ultimului:

git revert HEAD
# Creează un nou commit care anulează modificările ultimului commit
# Istoria se păstrează, este o metodă sigură atunci când lucrați cu ramuri publice

Alegerea depinde de rezultatul dorit și dacă ramura a fost publicată. --hard trebuie folosit cu precauție, deoarece poate duce la pierderea datelor. git revert este preferat atunci când lucrați cu ramuri utilizate de alți dezvoltatori.