我无法让这个工作
我想排除VirtualDlls文件夹下的所有.dll文件。
我一直在尝试使用正则表达式和全局变量,但我要么排除所有文件,要么没有。
全局
ScriptCode.ConvertedToC#/VirtualDlls/**.dll
没有任何文件
正则表达式:
^ScriptCode.ConvertedToC#/VirtualDlls/.+/.+.dll$
获取所有文件,包括以.cs
结尾的文件答案 0 :(得分:3)
诀窍是保持简单并理解匹配不是根,如hgignore
文档中所述。
如果您要排除以.dll
结尾的任何文件,无论它们在何处,都可以:
syntax: glob
*.dll
如果您只想在VirtualDlls
目录下面排除(非递归):
syntax: glob
VirtualDlls/*.dll
如果您想以递归方式仅在VirtualDlls
目录下面排除,那么您有两个选择。
长篇:每个目录级别一条规则:
syntax: glob
VirtualDlls/*.dll
VirtualDlls/*/*.dll
简短的:使用**
:
syntax: glob
VirtualDlls/**.dll
在您的示例中,您也使用**
,但我认为它不起作用,因为它还包含第一个目录ScriptCode.ConvertedToC#
。
我测试了所有的例子,它们都有效(在Mac上测试过,但我不明白为什么它们也不适用于Windows)。