Dans mon projet de test Serenity Java, une fois les tests exécutés, la cible et son sous-répertoire 'site' seront remplis de dizaines de fichiers et de répertoires pour afficher des rapports et des captures d'écran. Bien sûr, je ne veux pas valider tous ces fichiers dans le dépôt git, et je ne veux même pas qu'ils soient suivis. J'ai fait cela dans mon fichier .ignore qui se trouve au niveau supérieur du projet avec pom.xml comme indiqué.
## Any un needed file any where in the project file structure. *.class *.tmp *.jar *.html *.png *.json *.csv *.DS_Store # any eclipse project file. .eclipse .classpath ## All the folders underneath site folder **/site site/ site/* ## target folder at the top level of the project structue and paths and contents underneath it target/ target/* ## target folder at any level of the project structue **/target /target
Les fichiers sont toujours en cours de suivi ...
3 Réponses :
Essayez d'utiliser la logique suivante:
!target/ target/site/*
Cela devrait épargner le dossier target / tout en incluant target / site et tous ses sous-dossiers .
Ces fichiers ont été accidentellement suivis auparavant, mais .gitignore ne fonctionne que pour les fichiers qui ne sont pas suivis. Donc, ajouter un .gitignore "trop tard" se traduit par "ne fonctionne pas".
Je ne veux pas valider tous ces fichiers dans le dépôt git, et je ne veux même pas qu'ils soient suivis.
Vous pouvez utiliser git filter-branch pour supprimez ces fichiers de l'historique local .
Je n'ai pas besoin de supprimer les fichiers de l'historique local, car je ne les ai jamais validés du tout, pas même une seule fois. Tout ce que je veux faire, c'est de ne pas les voir dans mon statut git. Je veux que mon 'état git' soit précis et au point nécessaire.
@PraNuta Vous les avez accidentellement validés avant d'ajouter .gitignore, sinon vous ne les verrez pas "modifiés" "supprimés" (cela signifie qu'ils sont suivis).
Cela a résolu le problème. Depuis la page Comment faire" oublier "à Git un fichier qui a été suivi mais qui est maintenant en .gitignore?
Premièrement:
git rm -r - en cache. git add. Puis:
git commit -am "Supprimer les fichiers ignorés"
Doublon possible de Comment faire" oublier "à Git un fichier qui a été suivi mais qui est maintenant en .gitignore?
stackoverflow.com/search?q=%5Bgit%5D+forget+tracked+files