Comment ignorer .DS_Store dans tous les dossiers ?

Sans / initial, .DS_Store correspond à ce nom à toute profondeur sous le .gitignore. Si Git signale encore une modification, vérifiez le suivi du fichier.

1. Choisir la bonne portée

Placez cette ligne dans le .gitignore racine pour partager l’exclusion. /.DS_Store ne vise que la racine. Pour une préférence personnelle commune aux dépôts, utilisez le fichier global.

.DS_Store

Pourquoi les règles Git globales ignorent-elles un fichier ?

2. Distinguer fichiers ignorés et suivis

Pour les exemples non suivis, examinez la règle de chaque chemin :

git check-ignore -v -- .DS_Store assets/.DS_Store

Vérifiez ensuite si ces chemins précis sont dans l’index. check-ignore omet normalement les fichiers suivis ; une règle correspondante n’arrête pas leur suivi.

git ls-files -- .DS_Store assets/.DS_Store

3. Arrêter le suivi d’une copie précise

Si assets/.DS_Store est suivi, vérifiez son état et sauvegardez le travail local nécessaire, puis retirez uniquement son entrée d’index :

git rm --cached -- assets/.DS_Store

Vérifiez la suppression indexée avant de valider. --cached conserve votre copie locale, mais les collaborateurs peuvent perdre leur copie suivie à la récupération du commit. Répétez uniquement pour les chemins vérifiés ; évitez les suppressions globales et la reconstruction complète de l’index.

git diff --cached --name-status

Comment ignorer des fichiers déjà suivis par Git ?

Pour le comportement exact et davantage de détails, consultez les références officielles : Documentation Git · Documentation git rm · Documentation git check-ignore