web-dev-qa-db-fra.com

git checkout tous les fichiers

Comment puis-je me débarrasser de tous les changements dans tous les fichiers de mon référentiel?

Dis que je suis dans une branche et que j'ai fait quelques changements. git status renvoie un ensemble de fichiers dans la section "Modifications non effectuées pour la validation" et je remarque que je souhaite supprimer toutes ces modifications dans tous les fichiers. Comment puis-je faire cela avec une seule commande?

Je sais que je peux faire ce qui suit pour extraire un seul fichier:

git checkout -- <file>

J'ai remarqué que git checkout -- renvoie à lui seul la liste de tous les fichiers non validés. Cependant, je ne peux pas trouver un moyen de tous les commander, quelque chose comme git checkout --all.

J'ai vérifié man git checkout et je n'ai rien trouvé. J'ai aussi vu Git: Extraire tous les fichiers sauf un et essayé git checkout . et ne fonctionnait pas non plus.

Devrais-je le faire par programme, en passant en boucle par la sortie git checkout --?

91
fedorqui

Si vous êtes à la racine de votre répertoire de travail, vous pouvez utiliser git checkout -- . pour extraire tous les fichiers du fichier HEAD actuel et remplacer vos fichiers locaux.

Vous pouvez également utiliser git reset --hard pour réinitialiser votre répertoire de travail et remplacer toutes les modifications (y compris l'index).

144
poke

Une autre manière que j'ai trouvée utile est:

git checkout <wildcard> 

Exemple:

git checkout *.html

Plus généralement:

git checkout <branch> <filename/wildcard>
1
Singhak