Formation Git en vidéo
👆 Cliquez sur l'image pour découvrir la formation en vidéo

Annuler les changements en ajoutant un nouveau commit

Quelquefois nous souhaitons annuler le dernier commit en gardant une trace dans notre historique.

Il existe une commande qui permet d’annuler les modifications d’un commit en enregistrant un nouveau commit.

La commande qui nous donne ce résultat est git revert HEAD.

Pour bien comprendre, nous allons pratiquer.

Annuler les modifications

À l’aide d’un schéma, rappelons où nous sommes positionnés actuellement.

Où est HEAD ?

Nous allons utiliser la commande que nous avons apprise dans cette leçon et annuler le dernier commit.

git revert HEAD

Vérifions notre historique Git.

git log --oneline
20102d5 (HEAD -> master) Revert "Enregistrer console.log"
e63ba38 Enregistrer console.log
6210603 Enregistrer name3
ce7aad1 Enregistrer name2
5987a15 Enregistrer name1
7dd8a1c Ajouter le dossier fruits
c12ddda On ajoute names.js
308576e Utilisation des options -am
0032296 Création de deux fichiers
git revert HEAD

Un nouveau commit est enregistré avec l’annulation du dernier commit c’est-à-dire le e63ba38.

Analyser ce qui s’est produit

Réfléchissons 🤔 !

Logiquement, un des commits précédent doit être logiquement égale au dernier créé.

Effectivement, puisque la commande git revert HEAD a annulée les modifications du commit e63ba38, le dernier commit est logiquement égale au commit qui précède le e63ba38, c’est-à-dire le 6210603.

Et l’affirmation que nous venons d’énoncer est exacte.

Si vous le souhaitez, vous pouvez le vérifier en utilisant git checkout.

Illustration

Comprendre la commande git revert grâce à une illustration

Fichier servers.js

Et puisque nous avons annulé le dernier commit (e63ba38,), notre fichier names.js a été modifié.

// Fichier names.js
var name1 = "Henrique";
var name2 = "Mélanie";
var name3 = "Sabrina";