Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Annulation d’un Commit Spécifique | Annulation des Modifications
Notions Fondamentales de Git

bookAnnulation d’un Commit Spécifique

git revert

Pour annuler un commit spécifique, utiliser la commande git revert. Cette commande crée un nouveau commit qui annule les modifications introduites par le commit spécifié. Syntaxe de base :

git revert <commit-hash>

Au lieu d'utiliser HEAD (qui cible le dernier commit), spécifier le hash du commit (ID du commit) à annuler en remplaçant <commit-hash> par la valeur réelle du hash.

Plus d'informations sur les Hashs

Chaque commit possède un identifiant unique — une chaîne hexadécimale de 40 caractères composée de chiffres (0–9) et de lettres (a–f). Cet identifiant est appelé un hash. Afficher maintenant le dernier commit :

Le dernier commit

Voici son hash :

1b00736255dca7d78659a9971d0c30fba0eb3075

Note
Remarque

Vous aurez un hash différent pour ce commit pour la raison expliquée ci-dessous.

Le hash du commit est calculé à l'aide de l'algorithme SHA-1 à partir des informations suivantes :

  • Message du commit ;
  • Date ;
  • Auteur ;
  • Instantané de l'arborescence de travail ;
  • Hash du commit parent (ou des commits parents s'il y en a plusieurs).

Si le commit est le premier du dépôt, alors le hash du commit parent n'est apparemment pas calculé.

Comme toutes ces informations de commit sont utilisées pour calculer son hash, l'utilisation des hashes comme identifiants de commit garantit la cohérence du dépôt. De plus, la probabilité que deux commits différents aient le même hash (la probabilité de collision) est extrêmement faible, il est donc très improbable que cela se produise par hasard.

En résumé, si quoi que ce soit est modifié dans le commit, son hash changera également. Cela signifie qu'en cas de corruption des données pour une raison quelconque, Git peut utiliser le hash pour l'identifier.

Note
Remarque

Lors de la modification d’un commit, l’identifiant du commit change, c’est pourquoi il est préférable de ne pas utiliser la commande git commit --amend lors du travail avec des dépôts distants.

Exemple de flux de travail

Avant de décider quel commit annuler, afficher les quatre derniers commits :

Quatre derniers commits

Un commit a été effectué où le fichier recipe.txt a été ajouté. Annuler ce commit pour en créer un nouveau qui annule ces modifications et supprime effectivement le fichier. Dans cet exemple, le hash du commit est :

043b634d76a7a7744757350512b6367417c29e0

Votre hash de commit sera différent. Maintenant, annulez ce commit :

Remplacez ce hash par le vôtre.

Revenir sur Git

Encore une fois, l’éditeur de texte par défaut s’ouvre avec le message de commit par défaut pour l’annulation. Laisser le message inchangé.

Message de commit par défaut pour l’annulation

Ensuite, fermez correctement l’éditeur de texte et affichez les modifications apportées dans le dernier commit :

Le dernier commit

7 suppressions ont eu lieu, ce qui signifie que les sept lignes du fichier ont été supprimées. Vérifiez maintenant que le fichier lui-même a été supprimé en listant tous les fichiers et répertoires non cachés dans le répertoire du projet :

Liste des fichiers et répertoires

Le fichier recipe.txt a été supprimé avec succès.

question-icon

Associer les actions aux commandes respectives.


Revert the latest commit:

Revert a specific commit:

Unstage changes:

Revert unstaged changes:

Unstage changes and then revert the changes in the working directory:

Overwrite the existing commit:

Click or drag`n`drop items and fill in the blanks

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 3. Chapitre 5

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Awesome!

Completion rate improved to 3.57

bookAnnulation d’un Commit Spécifique

Glissez pour afficher le menu

git revert

Pour annuler un commit spécifique, utiliser la commande git revert. Cette commande crée un nouveau commit qui annule les modifications introduites par le commit spécifié. Syntaxe de base :

git revert <commit-hash>

Au lieu d'utiliser HEAD (qui cible le dernier commit), spécifier le hash du commit (ID du commit) à annuler en remplaçant <commit-hash> par la valeur réelle du hash.

Plus d'informations sur les Hashs

Chaque commit possède un identifiant unique — une chaîne hexadécimale de 40 caractères composée de chiffres (0–9) et de lettres (a–f). Cet identifiant est appelé un hash. Afficher maintenant le dernier commit :

Le dernier commit

Voici son hash :

1b00736255dca7d78659a9971d0c30fba0eb3075

Note
Remarque

Vous aurez un hash différent pour ce commit pour la raison expliquée ci-dessous.

Le hash du commit est calculé à l'aide de l'algorithme SHA-1 à partir des informations suivantes :

  • Message du commit ;
  • Date ;
  • Auteur ;
  • Instantané de l'arborescence de travail ;
  • Hash du commit parent (ou des commits parents s'il y en a plusieurs).

Si le commit est le premier du dépôt, alors le hash du commit parent n'est apparemment pas calculé.

Comme toutes ces informations de commit sont utilisées pour calculer son hash, l'utilisation des hashes comme identifiants de commit garantit la cohérence du dépôt. De plus, la probabilité que deux commits différents aient le même hash (la probabilité de collision) est extrêmement faible, il est donc très improbable que cela se produise par hasard.

En résumé, si quoi que ce soit est modifié dans le commit, son hash changera également. Cela signifie qu'en cas de corruption des données pour une raison quelconque, Git peut utiliser le hash pour l'identifier.

Note
Remarque

Lors de la modification d’un commit, l’identifiant du commit change, c’est pourquoi il est préférable de ne pas utiliser la commande git commit --amend lors du travail avec des dépôts distants.

Exemple de flux de travail

Avant de décider quel commit annuler, afficher les quatre derniers commits :

Quatre derniers commits

Un commit a été effectué où le fichier recipe.txt a été ajouté. Annuler ce commit pour en créer un nouveau qui annule ces modifications et supprime effectivement le fichier. Dans cet exemple, le hash du commit est :

043b634d76a7a7744757350512b6367417c29e0

Votre hash de commit sera différent. Maintenant, annulez ce commit :

Remplacez ce hash par le vôtre.

Revenir sur Git

Encore une fois, l’éditeur de texte par défaut s’ouvre avec le message de commit par défaut pour l’annulation. Laisser le message inchangé.

Message de commit par défaut pour l’annulation

Ensuite, fermez correctement l’éditeur de texte et affichez les modifications apportées dans le dernier commit :

Le dernier commit

7 suppressions ont eu lieu, ce qui signifie que les sept lignes du fichier ont été supprimées. Vérifiez maintenant que le fichier lui-même a été supprimé en listant tous les fichiers et répertoires non cachés dans le répertoire du projet :

Liste des fichiers et répertoires

Le fichier recipe.txt a été supprimé avec succès.

question-icon

Associer les actions aux commandes respectives.


Revert the latest commit:

Revert a specific commit:

Unstage changes:

Revert unstaged changes:

Unstage changes and then revert the changes in the working directory:

Overwrite the existing commit:

Click or drag`n`drop items and fill in the blanks

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 3. Chapitre 5
some-alt