.gitignore中的星号*能否匹配空内容?为何foo/*不匹配foo目录?
Gitignore 中星号
*的匹配规则疑问解答 星号*能否匹配空内容?
不能。Gitignore 采用的 Glob 模式里,*的匹配逻辑是匹配至少一个除斜杠/之外的字符,空内容不符合这个要求,所以不会被*匹配到。
为什么foo/*无法匹配根目录下的foo目录?
这是因为规则的匹配层级和目标不对应:
foo/*的结构是foo/(固定目录前缀)加上*(匹配该目录下的子项),它的作用是匹配foo目录内部的所有非空子项(文件或子目录),而不是foo目录本身。- 如果你想匹配根目录下的
foo目录,应该直接用foo或者foo/这样的规则,前者会匹配名为foo的文件或目录,后者则明确匹配foo目录。
内容的提问来源于stack exchange,提问作者Eason
相关产品推荐
相关产品推荐

