Publication du livre Oh Shit, Git?
(ohshitgit.com)-
Comment résoudre les problèmes Git
- Git est un outil complexe et propice aux erreurs, et il est souvent difficile de trouver comment résoudre un problème.
- Le livre explique, en anglais simple, différentes situations problématiques et leurs solutions.
-
Situations problématiques et solutions
-
Quand vous voulez annuler une mauvaise manipulation
- Utilisez
git reflogpour consulter l’historique des actions précédentes, puis revenez au point souhaité avecgit reset HEAD@{index}.
- Utilisez
-
Quand un petit changement est nécessaire après un commit
- Après avoir effectué la modification, utilisez
git add .puisgit commit --amend --no-editpour ajouter les changements au dernier commit. - Attention : ne modifiez pas un commit déjà publié.
- Après avoir effectué la modification, utilisez
-
Quand vous voulez modifier le message du dernier commit
- Utilisez
git commit --amendpour changer le message.
- Utilisez
-
Quand vous avez commité sur la mauvaise branche
- Créez une nouvelle branche, supprimez ensuite le commit de la branche master avec
git reset HEAD~ --hard, puis déplacez-vous sur la nouvelle branche pour conserver le commit.
- Créez une nouvelle branche, supprimez ensuite le commit de la branche master avec
-
Quand la commande diff ne fonctionne pas
- Utilisez
git diff --stagedpour voir les différences des fichiers placés en staging.
- Utilisez
-
Quand vous voulez annuler un ancien commit
- Trouvez le commit avec
git log, puis annulez-le avecgit revert [saved hash].
- Trouvez le commit avec
-
Quand vous voulez annuler les modifications d’un fichier
- Trouvez un commit précédent avec
git log, puis restaurez le fichier avecgit checkout [saved hash] -- path/to/file.
- Trouvez un commit précédent avec
-
-
Autres cas
- Quand vous voulez remettre le dépôt dans son état initial
- Utilisez
git fetch origin,git checkout master, puisgit reset --hard origin/masterpour le resynchroniser avec le dépôt distant. - Utilisez
git clean -d --forcepour supprimer les fichiers et répertoires non suivis.
- Utilisez
- Quand vous voulez remettre le dépôt dans son état initial
-
Points d’attention
- Le site précise qu’il ne s’agit pas d’une référence exhaustive et qu’il peut exister plusieurs façons de faire.
- Il remercie les nombreuses personnes ayant participé à la traduction.
1 commentaires
Avis Hacker News
git switchau lieu degit checkoutreset --hardet résoudre le problème quand on a validé sur la mauvaise branche en créant une nouvelle branchecherry-pickpour corriger un commit effectué sur la mauvaise branchegit reflogcar on le lit à tort comme « re-flog »git commitn’a pas vraiment de sens