Git/Exclure des fichiers du dépôt
Principe
[modifier | modifier le wikicode]Souvent il y a des fichiers dans l'espace de travail qui ne sont pas souhaitables dans le dépôt :
- Les fichiers générés temporairement. Par exemple,
emacs
crée automatiquement une copie des fichiers édités avec, avec un suffixe tilde, commefichier1~
. Il faut donc éviter manuellement de les soumettre. - Les fichiers de secours (backup) comme, par exemple, les fichiers .bak générés par les outils de comparaison de fichiers après des opérations de fusion.
- Les fichiers générés lors de la compilation,
- ...
Certains fichiers (notamment ceux générés lors de la compilation) sont en général situés dans un répertoire particulier, qu'il est possible d'exclure des dépôts Git.
.gitignore
[modifier | modifier le wikicode]Pour dire à Git d'ignorer certains fichiers, il est possible de créer un fichier .gitignore
. Chaque ligne y représente une spécification (avec wildcards) des fichiers ou répertoires à ignorer. Des commentaires peuvent être ajoutés dedans sur les lignes débutant par un blanc ou un dièse :
# Ignorer les backups Emacs : *~ # Ignorer le répertoire ''cache'' : app/cache
Ce fichier sera ensuite automatiquement proposé pendant les commits, de sorte que tous les développeurs du dépôt auront la même liste de fichiers à ignorer.
De plus, certains caractères sont interprétés, comme le "!" en début de ligne qui signifie "sauf" (ex : exclure un dossier sauf un de ses fichiers)[1].
Si un fichier a déjà été commité, l'ajouter dans .gitignore ne changera rien : il faut d'abord le supprimer de la branche.
exclude
[modifier | modifier le wikicode]Pour n’ignorer des fichiers que sur son propre poste, il faut les placer dans .git/info/exclude
. Ainsi, ils ne seront jamais proposés pendant les commits.
Recherche
[modifier | modifier le wikicode]Pour déterminer les fichiers ignorés d'un dossier ou pourquoi un fichier est ignoré, utiliser "check-ignore". Exemple :
git check-ignore core/scripts/imagecopy.py -v