87 votes

Comment répertorier les fichiers ignorés par git qui sont actuellement mis en scène ou validés ?

Comment obtenir une liste de ces fichiers qui correspondent à une règle dans le fichier .gitignore, mais qui ont été mis en scène ou validés dans le passé ?

23voto

Timon de Groot Points 1422

Je vais juste laisser celui-ci ici, basé sur la réponse de Richard :

git ls-files -i --exclude-standard | xargs git rm --cached

Cela supprimera tous les fichiers suivis ignorés par .gitignore .

0voto

CervEd Points 146

Les autres réponses n'affichent que les fichiers actuellement ignorés mais qui existent dans l'arbre de travail/index.

Pour voir les fichiers qui sont actuellement ignorés mais archivés dans le passé (et peut-être maintenant supprimés)

 git log --pretty=format: --name-only --diff-filter=A `# all files ever` \
| sed '/^$/d' `# skip git-logs empty lines` \
| sort -u `# sort + unique` \
| tr '\n' '\0' `# null separate for xargs` \
| xargs -0 git check-ignore # check if they are ignored

Je ne sais pas si les fichiers renommés sont affichés plusieurs fois ou non.

Éditer:

Corrige le formatage et saute git-log lignes vides

-3voto

seth Points 46

Cette question a été bien répondue par https://stackoverflow.com/a/467053 . Fondamentalement, git clean -ndX vous dira ce qui peut être ignoré en toute sécurité.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X