2017-09-05 63 views
0

TLDR:我想忽略父文件夹中除folder1和folder2的内容以外的所有文件。在可能的情况下,folder1或2包含jpg/png文件,也可以忽略它们。如何实现这个gitignore场景?

这是我目前在全球.gitignore中所拥有的。

*.jpg 
*.png 
/* 
!/folder1 
!/folder2 

非常感谢!

例如:

/parent-folder 
    -> text1.txt (ignored) 
    -> text2.txt (ignored) 
    ->folder1 (NOT ignored) 
    ->ex-gf.png (ignored) 
    ->my-resume.docx (NOT ignored) 
    ->folder2 (NOT ignored) 
    ->summer-vacation2017.jpg (ignored) 
    ->my-grocery-list.xlsx (NOT ignored) 

回答

0

上的文件夹的.gitignore设置不递归应用。被忽略的文件夹将不允许显示其中的任何内容,因为父文件夹丢失,但反过来不正确。

你可以明确免除JPG和PNG文件,该文件夹中:

!/folder1/*.png 
!/folder1/*.jpg 
!/folder2/*.png 
!/folder2/*.jpg 

豁免JPG和文件夹1的所有子文件夹PNG文件和2

!/folder1/**/*.png 
!/folder1/**/*.jpg 
!/folder2/**/*.png 
!/folder2/**/*.jpg 

免除的所有直接子文件夹1和2

!/folder1/* 
!/folder2/* 

或免除整个内容文件夹的所有子文件夹1和2

!/folder1/**/* 
!/folder2/**/* 

您可以随时使用git-check-ignore测试和故障诊断,当您去