Annulation de Commits
Glissez pour afficher le menu
Dans le vaste univers du contrôle de version avec Git, une situation courante consiste à devoir annuler des modifications introduites par un commit spécifique. Cela peut être dû à diverses raisons, telles que la découverte d'un bug, la constatation qu'une fonctionnalité n'est pas prête pour la production, ou simplement le souhait d'adopter une approche différente.
Heureusement, Git propose la commande git revert pour créer un nouveau commit qui annule les modifications introduites par le commit spécifique en effectuant l’inverse des changements de ce commit.
Annulation du dernier commit
Pour annuler le dernier commit, utilisez la commande suivante :
git revert HEAD
HEAD est un pointeur vers le dernier commit de la branche courante.
Comme il n'y a qu'une seule branche, HEAD pointe vers le dernier commit. Cette commande crée un nouveau commit qui annule les modifications du précédent. Git ouvre l'éditeur de texte par défaut pour permettre la modification du message de commit si nécessaire. Enregistrez et fermez l'éditeur pour terminer le revert.
Exemple de flux de travail
Ajoutez d'abord une nouvelle ligne au fichier recipe.txt avec l'étape suivante et committez directement la modification, en sautant la zone de staging :
echo "8. Peel the eggs" > recipe.txt
git commit -a -m "Add another step to the recipe"
Affichage des informations détaillées de ce commit à l'aide de la commande git show avec HEAD :
git show HEAD
Oups, toutes les lignes précédentes ont été supprimées car le mauvais opérateur de sortie a été utilisé — > au lieu de >>, ce qui a écrasé le fichier.
Pas d'inquiétude ; utilisez la commande git revert pour annuler ces modifications dans le dernier commit :
git revert HEAD
Comme vous pouvez le voir, l’éditeur de texte par défaut s’ouvre (Vim dans ce cas) avec un message de commit par défaut. Pour l’instant, laissez-le tel quel, mais dans des projets réels, il est recommandé d’indiquer la raison du retour en arrière, par exemple :
Revert "Add another step to the recipe"
Reason for rollback: the recipe.txt was overwritten.
This reverts commit b1148490543882f038069a0233a5d7e0b33f6221.
Pour enregistrer les modifications et quitter Vim, appuyer sur la touche Échap puis deux fois la lettre Z en majuscule.
Enfin, afficher les modifications dans les deux derniers commits :
git log -p -2
Fondamentalement, comme prévu, un nouveau commit a été créé avec les modifications inverses.
Utiliser les flèches pour faire défiler vers le haut ou le bas et appuyer sur la touche q pour quitter.
Merci pour vos commentaires !
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion