Perforce映射规则中点和星号之间的区别是什么?

时间:2011-04-06 15:59:13

标签: perforce

我了解//depot/foo/...将映射//depot/foo/下的所有文件和文件夹。那么,//depot/foo/*做了什么?我被告知不要使用它,并想了解原因。

1 个答案:

答案 0 :(得分:11)

...递归,*没有。如果要匹配给定位置的所有文件以及该位置下的所有文件,请使用...;如果您只想匹配给定文件夹中的文件,请使用*

用你的例子

  • //depot/foo/*只会匹配文件 在'foo'文件夹中(如果有的话) 任何)
  • //depot/foo/...将匹配文件 在foo文件夹以及任何 foo下面的文件

对于简单的客户端规范,您希望使用...,以便获取软件仓库中所有子目录中的所有文件。如果要匹配特定文件夹中的文件而不是下面的任何内容,可以在clientspec中使用*字符。作为一个例子

//depot/foo/...  //myclient/depot/foo/...
-//depot/foo/test/... //myclient/depot/foo/test/...
//depot/foo/test/* //myclient/depot/foo/test/*

上面将(按顺序),添加// depot / foo位置中的所有文件。然后它将删除// depot / foo / test中的所有内容(包括测试文件夹中的文件)。然后第三行将在中添加测试文件夹中的文件,而不会在下面添加任何内容。