这是我的文件夹。


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/的所有内容除外。

09-04 00:25