176 votes

Garder les fichiers ignorés hors du statut git

J'aimerais empêcher Git d'afficher les fichiers ignorés dans la rubrique git status car le fait d'avoir des tonnes de documentation et de fichiers de configuration dans la liste de Modifié mais pas mis à jour rend la liste à moitié inutile.

Est-il normal que Git affiche ces fichiers ?

J'ai placé les informations relatives à l'ignorance dans un .gitignore dans le répertoire Root du dépôt Git et ils ne sont pas ajoutés lors de l'utilisation du fichier git add . mais il semble qu'ils ne soient pas totalement ignorés non plus, puisqu'ils apparaissent dans la liste susmentionnée et qu'ils ne sont pas ignorés. ne pas figurent dans la liste imprimée par git ls-files --others -i --exclude-standard . Seuls les fichiers correspondant aux motifs de ~/.gitignore s'y montrer.

Serait-ce parce qu'à un stade antérieur, je ne les ai pas ignorés et qu'ils ont donc été commis au moins une fois ?

301voto

MBO Points 12516

Comme je l'ai constaté dans ce post , .gitignore ne fonctionne que pour les fichiers non suivis. Si vous avez ajouté des fichiers au référentiel, vous pouvez le faire :

git update-index --assume-unchanged <file>

ou les retirer du référentiel en

git rm --cached <file>

Editar

Cet article l'explique aussi

29voto

newbreedofgeek Points 725

J'ai eu ce problème aussi, c'est probablement parce que vous avez ajouté votre répertoire/fichier ignoré à .gitignore après qu'ils aient été marqués comme "à suivre" par GIT dans un flux de livraison initial.

Il faut donc vider le cache de suivi de git comme suit :

git rm --cached -r [folder/file name]

Une explication plus détaillée est disponible ici : http://www.frontendjunkie.com/2014/12/stop-git-from-tracking-changes-to.html

La commande ci-dessus a également supprimé les restes du dossier/fichier de votre origine GIT distante. Vos dépôts GIT sont donc propres.

27voto

Ramis Points 610

Le problème peut être que ce fichier est encore dans le cache git. Pour résoudre ce problème, il faut réinitialiser le cache git.

Pour un seul fichier

git rm --cached <file>

Pour l'ensemble du projet

Réinitialiser le cache git. C'est une bonne commande si vous avez commis un projet alors que le fichier .gitignore n'a pas été ajouté.

git rm -r --cached . 

Engager des changements

git add . 
git commit -m ".gitignore was fixed."

4voto

Usman Points 306

Cela fonctionne certainement,

git rm --cached -r [folder/file name]

1voto

N.Ramos Points 586

Je suppose que vous ne voulez pas ajouter le répertoire tmp (Visual Studio Platform)

1- ajoutez les lignes suivantes à votre fichier .gitignore local

## ignore tmp
/tmp/
./tmp/

3- sauvegarder et supprimer le dossier tmp localement. (Sauvegarder ailleurs, par exemple sur le bureau ?)

4- Commencer les changements en local puis les synchroniser avec le serveur distant (ex. github).

Après ces étapes, votre répertoire tmp ne sera plus téléchargé.

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