Đoạn xem trước bài giảng

Annuler les erreurs : restore, reset, revert — faire les bons choix sans danger

L'une des questions les plus fréquentes en entretien et dans la pratique professionnelle est de savoir comment annuler ce qui a déjà été fait. Nous allons explorer trois outils offrant différents niveaux d'annulation et nous concentrer sur l'essentiel : des scénarios concrets où 'reset --hard' peut nuire au travail d'équipe, et comment 'revert' offre une alternative plus sûre. Bonnes et mauvaises pratiques avec leurs conséquences réelles.

git restore git reset git revert
Bạn sẽ học gì trong bài giảng này
  • Vous serez capable d'annuler en toute confiance des modifications à n'importe quel stade : dans le répertoire de travail, dans l'index et dans l'historique des commits.
  • Vous comprendrez la différence fondamentale entre reset et revert, et saurez dans quelles situations utiliser l'un plutôt que l'autre.
  • Vous apprendrez à éviter les erreurs courantes commises par les débutants lors de l'annulation de modifications dans un dépôt partagé.

Phần đầu bài giảng

Git restore : le bouton annuler pour les fichiers

  • Git restore — annule les modifications non validées
  • Fonctionne comme le bouton 'annuler' d'un éditeur
  • Sûr — ne modifie pas l'historique des validations
  • Ramène les fichiers à leur dernier état enregistré

Imaginez que vous ayez accidentellement enregistré un fichier avec des erreurs et que vous souhaitiez tout remettre comme avant. Git restore agit comme un bouton magique d'annulation — il ramène les fichiers à leur dernier état validé. Contrairement aux autres commandes d'annulation, restore ne fonctionne qu'avec des modifications non validées et est totalement inoffensif pour l'historique de votre projet. C'est le premier outil à utiliser quand vous devez corriger rapidement une erreur sans risquer d'affecter l'historique des changements.

Annuler les modifications dans le répertoire de travail

  • git restore fichier.txt — restaure le fichier à son dernier commit
  • Annule toutes les modifications dans le répertoire de travail
  • Sûr — les modifications peuvent être récupérées via l'éditeur
  • Vérifiez l'état avec git status avant restauration

Supposons que vous ayez passé une demi-heure à modifier un fichier de configuration, mais que vous réalisiez que vous êtes sur la mauvaise piste. Au lieu d'annuler manuellement chaque modification, exécutez simplement git restore config.yml. Le fichier reviendra instantanément à son état au dernier commit. C'est comme si vous aviez simplement fermé le fichier sans enregistrer, mais avec la garantie de retrouver une version fonctionnelle.

# Démonstration de restauration de fichier
$ echo "Modifications erronées" > main.py
$ git status
$ git restore main.py
$ cat main.py
$ git status

Retirer un fichier de l'index

  • git restore --staged fichier.txt — retirer un fichier de l'index
  • Préserve les modifications dans le répertoire de travail
  • Attention : sans --staged, les modifications seront perdues
  • Toujours vérifier git status avant d'exécuter

Une erreur fréquente est d'ajouter accidentellement un fichier superflu à l'index. Par exemple, vous avez exécuté git add . et y avez inclus un fichier de configuration temporaire. La commande git restore avec le drapeau staged et le nom du fichier settings.tmp le retirera proprement de l'index, tout en préservant toutes les modifications dans le répertoire de travail. Sans le drapeau staged, vous auriez perdu votre travail, donc vérifiez toujours le statut avec git status avant d'exécuter restore. Maintenant vous savez annuler des modifications avant le commit. Mais que faire si l'erreur est déjà dans l'historique ? C'est là que git reset entre en jeu.

# Fichier ajouté accidentellement à l'index
$ git add config.tmp
$ git status

# Retirer de l'index en conservant les modifications
$ git restore --staged config.tmp
$ git status

# Vérifier que le fichier est toujours dans le répertoire de travail
$ ls -la config.tmp

Bài giảng đầy đủ dành cho thuê bao

Còn 24 slide nữa trong phiên bản đầy đủ.

Video, toàn bộ slide, ghi chú, bài kiểm tra, gia sư AI và phỏng vấn sẽ mở sau khi đăng nhập và đăng ký thuê bao.

Đăng nhập hoặc đăng ký Đăng ký thuê bao

Nội dung bài giảng

  1. Git restore : le bouton annuler pour les fichiers
  2. Annuler les modifications dans le répertoire de travail
  3. Retirer un fichier de l'index
  4. Git reset : comment fonctionne le rembobinage de l'historique
  5. Reset --soft sécurisé : modifications dans l'index
  6. Reset --mixed par défaut : modifications dans le répertoire de travail
  7. Reset --hard dangereux : suppression irréversible
  8. Reset : trois modes, une commande
  9. git reset --soft : réécrire l'historique en toute sécurité
  10. Quand utiliser --mixed et --hard
  11. Check-list : quel reset choisir ?
  12. Pourquoi ne peut-on pas simplement effacer une erreur ?
  13. Comment fonctionne git revert en pratique
  14. Annuler plusieurs commits en une fois
  15. Reset : Réécrire l'historique en local
  16. Revert : Annuler les changements en toute sécurité
  17. Que se passe-t-il lors d'un push : reset vs revert
  18. Pourquoi reset --hard est dangereux
  19. Exemple de perte de modifications
  20. Comment récupérer les données
  21. Les dangers de l'annulation dans une branche partagée
  22. Annulation sécurisée avec revert
  23. La bonne séquence d'actions
  24. Quand utiliser : restore, reset ou revert
  25. Règles pour travailler avec l'historique personnel et partagé
  26. Procédure pas à pas en cas d'erreur
  27. Récapitulatif et mission : Maître des annulations

Bài viết liên quan đến bài học này

Tất cả bài giảng của khóa học

  1. Introduction : Git du débutant au développeur confirmé
  2. À quoi sert Git exactement - et pourquoi il est indispensable pour trouver un emploi
  3. Installation et configuration : Préparer Git pour son premier démarrage
  4. Premier dépôt : init, add, commit et la magie de l'index
  5. Lire l'historique : log, diff, show et navigation dans le passé
  6. Branches : la réalité parallèle de votre code
  7. Annuler les erreurs : restore, reset, revert — faire les bons choix sans danger
  8. GitHub et les dépôts distants : votre code dans le cloud
  9. Travail d'équipe : Forks, branches de fonctionnalités et demandes d'intégration (pull requests)
  10. Conflits de fusion : ne paniquez pas - comprenons et résolvons
  11. Processus Git dans les équipes réelles : quel workflow choisir ?
  12. Outils avancés : rebase, stash, cherry-pick et les tags
  13. Projet final : Simulation d'un développement d'équipe réel