2017-06-23 1 views
0

J'ai un fichier .gitignore dans lequel j'ignore tout, puis j'ignore les fichiers et répertoires spécifiques. Cependant, une partie ne semble pas fonctionner..gitignore un-ignore les fichiers .cc

/* 

!.gitignore 
!Makefile 
!include/ 
!src/ 
!test/*.cc 

**.swp 

Nouveaux *.cc fichiers dans le répertoire test ne figurent pas dans git status.

+0

[Cette question] (https://stackoverflow.com/questions/10712555/gitignore-all-files-of-extension-in-directory) semble désireux de vous avoir créé un '.gitignore' pour votre sous-dossier spécifique. –

+0

@TimBiegeleisen, j'ai fait 'test/.gitignore' avec' * .cc' mais le résultat est exactement le même. – SU3

+0

Quelle version de Git utilisez-vous? –

Répondre

2

La règle /* entraîne l'ignorance du répertoire test, de sorte que git ne descend jamais du tout. Par conséquent, votre règle !test/*.cc n'a aucun effet.

Vous avez besoin d'une séquence d'alternance et des règles comme celle-ci se chevauchent: tout ignorer, puis non ignorer test, ignorer alors tout sous test, puis non ignorer les .cc fichiers dans test.

/* 
!test 
test/* 
!test/*.cc 
+0

Je suppose qu'un répertoire n'est pas disponible pour le trajet avec le modèle qui ne peut pas être adapté sans lui. – SU3