Perforce 性能:如何从不同版本签出同一文件?

Perforce 性能:如何从不同版本签出同一文件?,perforce,vcs-checkout,changelist,Perforce,Vcs Checkout,Changelist,例如,我在变更列表中签出了100个文件: //Development/MyProject/Version1.0/Coord/File1.cs //Development/MyProject/Version1.0/Coord/File2.cs ... //Development/MyProject/Version1.0/Coord/Filen.cs //Development/MyProject/Version1.0/Common/File1.cs ... //Development/MyProj

例如,我在变更列表中签出了100个文件:

//Development/MyProject/Version1.0/Coord/File1.cs
//Development/MyProject/Version1.0/Coord/File2.cs
...
//Development/MyProject/Version1.0/Coord/Filen.cs
//Development/MyProject/Version1.0/Common/File1.cs
...
//Development/MyProject/Version1.0/Common/Filen.cs
类似地,在更多的目录中。现在我想在
Version2.0

//Development/MyProject/Version2.0/Coord/File1.cs
//Development/MyProject/Version2.0/Coord/File2.cs
...
//Development/MyProject/Version2.0/Coord/Filen.cs
//Development/MyProject/Version2.0/Common/File1.cs
...
//Development/MyProject/Version2.0/Common/Filen.cs
我可以通过查看在
Version1.0
中签出了哪些文件,然后转到
Version2.0
中的每个目录并签出这些文件来实现这一点。这是一项乏味的工作


任何光明正大的方法吗?

在linux/Unix/macOS shell中,我建议使用以下方法。除非在Windows中安装了unix工具,否则在Windows中会有很大的不同

  • 检查所有版本1.0文件
  • cd到您的版本1.0目录
  • 运行以下命令行:
  • p4已打开…|sed的/\\\\[1-9].$/'\124; sed的/\/Version1.0\/\/Version2.0\/'\124;
    p4-x-编辑


    注意:如果您的任何文件的名称中有“#”符号,则需要进行一些调整。这是个又快又脏的办法。感谢上面的Bryan Pendleton,他基本上简单地说了同样的话。

    您是否正在尝试签出在version1.0树中签出的Version2.0中的文件集?通过一些简单的脚本编写,您可以大大减少繁琐。管道“p4打开”| sed's/Version1.0/Version2.0/| p4-x-edit。或者类似的东西。@markyes。我也在尝试做同样的事情。。。