这是我的文件夹。
一
乙
B1.txt文件
b2.txt文件
A1.txt文件
A2.txt文件
.gitignore命令
首先:
我发现如果我想忽略文件夹a,a/
和a/*
和a/**
都可以完成。
其次:
我想忽略文件夹A中除文件夹B之外的所有内容,唯一的方法是:
a/*
!a/b/
我不知道为什么
a/**
不能这样做?# this way can't except folder b
a/**
!a/b/
或者你可以告诉我如何使用
a/**
? 最佳答案
**
匹配任意数量的目录,*
仅匹配一个。
所以如果你忽略了/a/**/d/
,那么/a/b/d/
和/a/b/c/d/
都被忽略了。
例如,如果忽略/a/*/d/
,则忽略/a/b/d/
,而不忽略/a/b/c/d/
。
如果一个文件夹被忽略,那么git甚至不会查看其内容来检查包含内容。这就是为什么您不能忽略/a/
然后包含/a/b/
,因为git甚至都不查看/a/
。因此,您必须用/a/
忽略/a/*
中的所有内容,然后包含/a/b/
以忽略/a/
中的所有内容,但/a/b/
的所有内容除外。