J'essaie d'annuler les modifications locales apportées à un fichier spécifique. Rien n'a été commis.
Lorsque je veux annuler toutes les modifications, je peux effectuer git revert --reset HEAD
. Cependant, dans ce cas, je ne veux pas annuler toutes les modifications apportées à tous les fichiers.
Ce n'est pas clair ni évident pour moi de restaurer un fichier, même après avoir lu la page de manuel git-revert(3)
:
NAME
git-revert - Revert some existing commits
SYNOPSIS
git revert [--[no-]edit] [-n] [-m parent-number] [-s] <commit>...
git revert --continue
git revert --quit
git revert --abort
...
Ceci est similaire à Comment restaurer un fichier spécifique dans un ancien commit sur git , mais aucun commit n'a été effectué. Et contrairement à OP, qui souhaite revenir à une validation arbitraire, je souhaite simplement que le fichier retourne à la copie de MASTER.
Sous SVN, je voudrais simplement supprimer le fichier en question, puis effectuer un svn update
.
Comment rétablir les modifications dans un seul fichier?
Vous ne voulez pas git revert
. Cela annule un commit précédent. Vous voulez que git checkout
récupère la version git du fichier auprès de master.
git checkout -- filename.txt
En général, lorsque vous souhaitez effectuer une opération git sur un seul fichier, utilisez -- filename
.