如果我说hg show $REV some_path -I're:.*included' -X're:.*excluded'
,这到底是什么意思? some_path
与--include
模式如何相互作用? --exclude
模式怎么样?
答案 0 :(得分:3)
针对三个已定义的集合进行文件匹配:匹配(some_path
),包含(re:.*included
)和排除(re:.*excluded
)。最终匹配文件的集合是匹配项的交集,包括减排除项;例如(M /\ I) - E
。多个匹配项/包含项/排除项结合在一起。
因此,例如,上面的示例匹配some_path/included
但不匹配included
(因为some_path
与该路径不匹配)。但是,如果您改写了-Isome_path -I.*included
,则将包含some_path
(因为include集将这两个元素合并在一起。)最终的结果是,您可以使用--include
来过滤出符合条件的匹配项与任何的包含模式都不匹配。
在特殊情况下,没有匹配项(即匹配所有内容)和没有包含或排除项(包括所有内容,不排除任何内容)的情况。