Rétablir et annuler des fichiers

Introduction à Git

George Boorman

Curriculum Manager, DataCamp

Faire une erreur

Quatre fichiers dans un dépôt, dont trois sont ajoutés à la zone de préparation et un est validé : report.md, mental health survey.csv et summary statistics.csv

Introduction à Git

Annuler des fichiers

  • Rétablir le dépôt à l'état d'avant le dernier commit

  • git revert

    • Rétablit des versions antérieures et crée un commit
    • Restaure tous les fichiers modifiés dans le commit visé
    • a845edcb, ebe93178, etc.
    • HEAD, HEAD~1, etc.
git revert HEAD
Introduction à Git

Annuler des fichiers

git revert HEAD

Éditeur de texte montrant le message de commit

  • Enregistrer : Ctrl + O, puis Entrée
  • Quitter : Ctrl + X
Introduction à Git

Annuler des fichiers

[main 7d11f79] Revert "Adding fresh data for the survey."
 Date: Tue Jul 30 14:17:56 2024 +0000
 1 file changed, 3 deletions(-)
Introduction à Git

Options de git revert

  • Éviter d'ouvrir l'éditeur de texte
    git revert --no-edit HEAD
    

 

  • Annuler sans valider (placer les fichiers dans la zone de préparation)
    git revert -n HEAD
    
Introduction à Git

Annuler un seul fichier

  • git revert agit sur des commits, pas sur des fichiers individuels

  • Pour annuler un seul fichier :

    • git checkout
    • Utilisez un hachage de commit ou la syntaxe HEAD
git checkout HEAD~1 -- report.md
Introduction à Git

Vérifier le checkout

git status
On branch main
Changes to be committed:
  (use "git restore --staged <file>..." to unstage)

        modified:   report.md
Introduction à Git

Créer un commit

git commit -m "Checkout previous version of report.md"
[main daa6c87] Checkout previous version of report.md
 1 file changed, 1 deletion(-)
Introduction à Git

Retirer un fichier de la préparation

Quatre fichiers dans un dépôt, dont trois sont ajoutés à la zone de préparation : report.md, mental health survey.csv et summary statistics.csv

Introduction à Git

Retirer un fichier de la préparation

Le fichier Summary statistics est déplacé de la zone de préparation vers le dépôt

Introduction à Git

Retirer un seul fichier de la préparation

  • Pour retirer un seul fichier de la préparation :
git restore --staged summary_statistics.csv
  • Modifier le fichier
git add summary_statistics.csv
git commit -m "Adding age summary statistics"
Introduction à Git

Retirer tous les fichiers de la préparation

  • Pour retirer tous les fichiers de la préparation :
git restore --staged
Introduction à Git

Résumé

Commande Résultat
git revert HEAD Annuler tous les fichiers d'un commit donné
git revert HEAD --no-edit Annuler sans ouvrir un éditeur de texte
git revert HEAD -n Annuler sans créer un nouveau commit
git checkout HEAD~1 -- report.md Annuler un seul fichier du commit précédent
git restore --staged report.md Retirer un fichier de la zone de préparation
git restore --staged Retirer tous les fichiers de la zone de préparation
Introduction à Git

Passons à la pratique !

Introduction à Git

Preparing Video For Download...