Comment supprimer des branches Git sur des référentiels locaux et distants - CloudSavvy IT
Agence web » Actualités du digital » Comment configurer .gitignore en tant que liste blanche

Comment configurer .gitignore en tant que liste blanche

Le fichier .gitignore est une partie cruciale de tout référentiel Git ; il empêche le suivi et le partage des fichiers indésirables dans le contrôle de source. Habituellement, vous souhaitez ignorer certains fichiers et dossiers, mais il est parfois plus facile de le faire dans l’autre sens.

Utiliser .gitignore comme liste blanche

L’utilisation régulière de .gitignore est simple : donnez-lui un nom de fichier ou un caractère générique correspondant, et ce fichier sera bloqué. Cependant, lorsque vous l’utilisez comme liste blanche, cela devient un peu plus compliqué.

Tout d’abord, vous aurez besoin des deux directives suivantes en haut du fichier, qui bloquent tout par défaut avec un caractère générique englobant *:

*
!*/

La deuxième ligne est nécessaire car la liste blanche n’est pas aussi simple que le blocage. En raison de la façon dont Git gère ces fichiers, s’il voit qu’un répertoire est bloqué, il ne essayer pour vérifier quoi que ce soit dans le répertoire pour voir s’il a été débloqué plus tard. Il l’ignore simplement et ignore toutes les règles à l’intérieur de ce répertoire.

Ainsi, la deuxième ligne ici indique à Git de vérifier spécifiquement les sous-dossiers. Le point d’exclamation ! est utilisé pour transformer la règle en liste blanche. Il correspond à tous les répertoires, mais comme il ne correspond à rien à l’intérieur de ces répertoires, Git ne suivra aucun fichier pour l’instant avec ces deux lignes uniquement.

Cela permet des configurations comme les suivantes :

*
!*/

# track this file
!.gitignore

# whitelist everything in ./config/
!config/

Les .gitignore le fichier lui-même se trouve dans le répertoire principal, il peut donc être simplement ajouté à la liste blanche normalement. La mise en liste blanche des répertoires nécessite simplement une barre oblique de fin, et Git reviendra à la normale dans ce répertoire, remplaçant le caractère générique bloquant tout précédent.

Si vous souhaitez explicitement whitelister un répertoire et tout son contenu, vous devez utiliser le double joker, !config/**. Un seul caractère générique ne se propagerait pas de manière récursive dans les sous-répertoires. Cela remplacera toutes les autres règles de blocage.

Débogage de .gitignore

Si vous rencontrez des problèmes avec votre configuration, vous pouvez la déboguer avec le check-ignore Commande Git :

git check-ignore -v testfile.json