使用 Git 排除除某些文件夹之外的所有树
Exclude all tree except some folder using Git
我有一些树结构:
/a
/a/a
/a/b
/b/
..
/a/z
/b
.. (thousands of folders)
/z
如何只控制 /a/a 和 /b 文件夹?
排除文件应该是什么?
我们现在使用的方式是:
/a/*
/c/
.. (thousands of folders)
/z/
!/a/a
但是很不好看,也很难维护...
根据 this 答案,.gitignore
语法中使用了标准通配规则,因此您不能使用标准正则表达式来解决此问题。
也就是说,您可以稍微缩短 gitignore
。此模式将排除除 a
和 b
:
以外的所有文件夹
[cdefghijklmnopqrstuvwxyz]
好的,我解决了!
/*
!/a/
/a/*
!/a/a/
!/b/
原来有几千行,现在只有五行)))
我有一些树结构:
/a
/a/a
/a/b
/b/
..
/a/z
/b
.. (thousands of folders)
/z
如何只控制 /a/a 和 /b 文件夹?
排除文件应该是什么?
我们现在使用的方式是:
/a/*
/c/
.. (thousands of folders)
/z/
!/a/a
但是很不好看,也很难维护...
根据 this 答案,.gitignore
语法中使用了标准通配规则,因此您不能使用标准正则表达式来解决此问题。
也就是说,您可以稍微缩短 gitignore
。此模式将排除除 a
和 b
:
[cdefghijklmnopqrstuvwxyz]
好的,我解决了!
/*
!/a/
/a/*
!/a/a/
!/b/
原来有几千行,现在只有五行)))