(p4 api .NET)使用Client.EditFiles时覆盖修订规范错误

时间:2013-06-26 19:05:43

标签: c# .net perforce

con.Client.EditFiles(foundFiles, new Options(EditFilesCmdFlags.None, changelist.Id, null));

我正在运行此行代码时收到错误“此处不能使用修订版规范(#或@)”。我怀疑是因为我的一些文件在findFiles中的名字中包含一个“#”符号。任何人都可以确认这是问题吗?还有人知道解决方法吗?我在Client.AddFiles中遇到了类似的错误,但是我可以使用AddFilesCmdFlags.KeepWildcards来调用-f(强制)标志来绕过它。不幸的是,这对EditFiles也不起作用。

注意:我无法更改文件的名称,因为有数千个文件,并且我的管辖范围内不以任何方式更改它们。

1 个答案:

答案 0 :(得分:2)

这应该这样做:

Options opts = new Options(EditFilesCmdFlags.None, changelist.Id, null);
con.Client.EditFiles(FileSpec.UnversionedSpecList(foundFiles), opts);

UnversionedSpecList是FileSpec中的一个静态函数,允许您传入FileSpecs列表,它将为您删除版本。