Git Academy

Intermédiaire · 5 min de lecture

.gitignore, pour de vrai

Motifs, exceptions, fichier d'ignore global, et pourquoi ton fichier est encore suivi.

Les motifs

Un motif par ligne. Un / final désigne un dossier (build/). * correspond à tout sauf /, ** à n'importe quelle profondeur (**/logs). Un / au début ancre à la racine du dépôt (/config.json). Les lignes commençant par # sont des commentaires.

Les exceptions avec !

!motif ré-inclut un fichier : .env.* puis !.env.example. Attention : impossible de ré-inclure un fichier si son dossier parent est ignoré ; ignore dossier/* plutôt que dossier/.

Ton fichier d'ignore personnel

Les fichiers d'éditeur et d'OS (.DS_Store, .idea) vont dans un fichier global, pas dans chaque projet.

Sans risque
$ git config --global core.excludesFile ~/.gitignore_global

Déjà suivi ? Arrête de le suivre

.gitignore n'agit jamais sur les fichiers déjà suivis. Retire-les de l'index en les gardant sur le disque, et utilise check-ignore pour déboguer une règle.

Sans risque
$ git rm -r --cached dist
$ git check-ignore -v dist/app.js