Pour ceux qui ne connaissent pas git, il s’agit d’un logiciel de gestion de versions ayant la particularité d’être décentralisé, je vous invite à regarder la page wikipedia, c’est un atout formidable pour les développeurs. (Voir aussi Subversion, Mercurial pour ne citer qu’eux).
Pour les autres, voici une petite astuce qui m’a sauvé une ou deux fois.
Il peut arriver de pusher par erreur des commits, ou de se rendre compte après coup d’un bug.
Plusieurs solutions existent, notamment :
- Publier d’autres commits pour annuler les changements.
Grâce à la commande « revert » de git, il est possible de publier des commits à effet inverse.
git revert commit1 commit2 … commitn
Cette solution est élégante mais si il y a beaucoup de commits à annuler, le log devient illisible et il n’est pas facile de s’y retrouver.
- Annuler purement et simplement les commits en forcant un push
La commande push de git permet de faire beaucoup de choses, notamment de forcer le dépot distant à se synchroniser avec le commit qu’on lui donne, soyez prudent car les commits sont ensuite perdus sur le dépôt distant.
git push -f commit_ou_tout_va_bien
Le dernier commit sur le dépôt sera alors « commit_ou_tout_va_bien », les commits ultérieurs seront supprimés.
Happy gitting
4 Trackbacks/Pingbacks
… [Trackback]…
[...] There you will find 65643 more Infos: staygeek.fr/2011/08/13/git-annuler-un-commit-pushe/ [...]…
… [Trackback]…
[...] Find More Informations here: staygeek.fr/2011/08/13/git-annuler-un-commit-pushe/ [...]…
… [Trackback]…
[...] There you will find 72504 additional Informations: staygeek.fr/2011/08/13/git-annuler-un-commit-pushe/ [...]…
… [Trackback]…
[...] Read More here: staygeek.fr/2011/08/13/git-annuler-un-commit-pushe/ [...]…