{{tag>git dev annuler commit}}
====== Annuler le dernier commit =====
Dans le cas ou un push a été fait sur le dépôt distant, l'annulation telle que proposé ci dessus n'est pas valide. Il faudra utiliser **git revert**.
Le cas peut se présenter lorsque on se rend compte que le commit a été fait sur la mauvaise branche. On souhaite l'annuler. Si le commit n'a pas été propagé, il peut être annulé sans problème via la commande:
# Repositionne le pointeur HEAD sur le commit précédent
$ git reset HEAD^
# équivalents
$ git reset --soft HEAD^
$ git reset --soft HEAD~1
L'annulation présentée ci-dessus conserve les modifications apportées depuis le dernier commit dans le répertoire de travail. Si l'on souhaite revenir à l'état du commit précédent sans conserver ces modifications, on peut utiliser l'option **%%--hard%%**
$ git reset --hard HEAD^
# équivalent
$ git reset --hard HEAD~1
===== Références =====
* http://www.nikrou.net/post/2009/11/29/git-%3A-annuler-le-dernier-commit-non-propag%C3%A9
* http://sametmax.com/git-revert-pour-annuler-proprement-le-dernier-commit/