Git 排除除一个以外具有特定名称的目录
Git exclude directories with specific name except one
我看到了一些与此类似的问题,也阅读了 gitignore manual,但仍然无法理解这一问题。
我想排除所有名为 lib
的文件夹(我的规则是 "lib/"
),除了一个文件夹(将来可能更多)是我可以的第 3 方文件夹'改名字,在<root>/3rdparty/projectX/lib/
.
下
我试过这个:
!lib/
lib/*
!projectX/lib/
但这也包括不在根目录下的具有 lib 文件夹的其他文件夹
是否可以将此文件夹添加为例外?怎么样?
你有几个选择。
完整路径:
lib/
!3rdparty/projectX/lib/
通配符匹配:
lib/
!*/projectX/lib/
通配符匹配任何级别的子目录:
lib/
!**/projectX/lib/
你的 gitignore 没有工作,因为它专门忽略了根目录中的 projectX
目录。
我看到了一些与此类似的问题,也阅读了 gitignore manual,但仍然无法理解这一问题。
我想排除所有名为 lib
的文件夹(我的规则是 "lib/"
),除了一个文件夹(将来可能更多)是我可以的第 3 方文件夹'改名字,在<root>/3rdparty/projectX/lib/
.
我试过这个:
!lib/
lib/*
!projectX/lib/
但这也包括不在根目录下的具有 lib 文件夹的其他文件夹
是否可以将此文件夹添加为例外?怎么样?
你有几个选择。
完整路径:
lib/
!3rdparty/projectX/lib/
通配符匹配:
lib/
!*/projectX/lib/
通配符匹配任何级别的子目录:
lib/
!**/projectX/lib/
你的 gitignore 没有工作,因为它专门忽略了根目录中的 projectX
目录。