Mes programmes génèrent généralement d’énormes fichiers de sortie (~ 1 Go) que je ne souhaite pas sauvegarder sur le référentiel git. Donc, au lieu de pouvoir faire
git add .
Je dois faire quelque chose comme
git add *.c *.cc *.f *.F *.C *.h *.cu
ce qui est un peu lourd ...
Je suis assez confiant que je pourrais écrire un script Perl rapide dans le contenu du répertoire dans .gitignore, puis supprimer des fichiers basés sur un fichier .gitinclude (ou un nom similaire), mais cela me semble un peu trop dur. Y a-t-il un meilleur moyen?
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 négatif 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_"
créez un fichier .gitignore dans votre référentiel et vous souhaitez suivre uniquement les fichiers c et ignorer tous les autres fichiers, puis y ajouter les lignes suivantes ....
*
!*.c
'*' ignorera tous les fichiers
et ! les fichiers seront ignorés .... alors nous demandons à git de ne pas ignorer les fichiers c ...
La meilleure solution pour y parvenir
créer .gitignore
fichier dans le référentiel root
, et si vous voulez inclure uniquement .c
fichier, vous devez ajouter les lignes ci-dessous à .gitignore
fichier
*.*
!*.c
cela inclura tous .c
fichier du répertoire et du sous-répertoire de manière récursive.
en utilisant
*
!*.c
ne fonctionnera pas sur toutes les versions de git.
Testé sur
git version 2.12.2.windows.2
Utilisez ceci dans gitignore
*.*
!*.c
testé avec la version 2.7.4 de git