Annuler des commits avec reset
Intermédiairegit reset déplace le pointeur de la branche courante. Trois modes :
# --soft : annule le commit, garde les changements indexés (staged)
git reset --soft HEAD~1
# --mixed (par défaut) : annule le commit ET le staging, garde les fichiers modifiés
git reset HEAD~1
# --hard : annule le commit, le staging, ET les modifications du working directory
git reset --hard HEAD~1
# Revenir à un commit précis (attention : perd tout ce qui vient après, en --hard)
git reset --hard abc1234
⚠️
git reset --hardsupprime définitivement les changements non commités. Vérifiezgit statusavant de l'utiliser. Si le commit existait déjà, il reste souvent récupérable via le reflog.