209 votes

Est-il possible de dire à git d'inclure uniquement certains fichiers au lieu d'ignorer certains fichiers?

Mes programmes en général génèrent d'énormes fichiers de sortie (~1 GO) que je ne veux pas être sauvegarde sur le dépôt git. Ainsi, au lieu d'être en mesure de le faire

git add .

Je dois faire quelque chose comme

git add *.c *.cc *.f *.F *.C *.h *.cu

ce qui est un peu encombrant...

Je me sens assez confiant que je pourrais écrire un quicky script perl ls le contenu d'un répertoire .gitignore et puis supprimer les fichiers basé sur un .gitinclude (ou autre nom) du fichier, mais cela semble un peu trop hackish. Est-il un meilleur moyen?

293voto

T.E.D. Points 26829

Je n'ai pas eu besoin de l'essayer moi-même, mais d'après ma lecture de TFM, il semble qu'un motif nié ferait ce que vous voulez. Vous pouvez remplacer les entrées dans .gitignore par des entrées annulées ultérieurement. Ainsi, vous pourriez faire quelque chose comme:

 *.c
!frob_*.c
!custom.c
 

Pour qu'il ignore tous les fichiers .c sauf custom.c et tout ce qui commence par "frob_"

91voto

Vineel Kumar Reddy Points 1036

Créez un fichier .gitignore dans votre référentiel et vous voulez suivre uniquement les fichiers c et ignorer tous les autres fichiers, puis y ajouter les lignes suivantes ....

 *
!*.c
 

'*' ignorera tous les fichiers

et ! nierons les fichiers soit à ignorer ... donc nous demandons à git de ne pas ignorer les fichiers c ...

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