我有一个我需要移动的文件已经在perforce下.一旦移动它需要一些编辑 - 更新包等 - 适合其新位置.我应该提交移动变更规格然后重新打开以进行编辑,还是我可以一次性完成此操作?如果是这样,那么适当的事件顺序是什么?
我以前一次完成了这个,但是根据你的构建过程,我建议不要这样做.我通常做的是:
移动文件.
如果移动需要更改才能进行编译,请将其打开以进行编辑并进行更改.
提交更改,告知perforce重新打开文件进行编辑.
对路径等进行更改,这些更改不会导致编译错误,但应进行更新.
使用适当的描述提交这些更改.
但是,如果您愿意,可以在上面的步骤(2)中进行所有更改.Perforce可能会将新文件的标志从集成更改为添加,但它仍会记住该文件的源路径.
编辑:更好的方法
我意识到我经常使用不同的方法,但"移动"文件的想法分散了我的注意力.所以,我会推荐这些步骤:
将文件集成到新路径/名称中,将前一个文件保留在那里.我假设这不会破坏你的构建过程.
提交新文件,在提交后再次检出以进行编辑.
对新文件和项目进行必要的更改,以便您使用新文件.
提交新文件的编辑内容.
[可选]您可能需要检查分支规范,以查看是否需要将旧文件映射到任何分支中的新文件.
创建一个删除旧文件的更改列表,稍后再提交.
此方法允许将编辑与重命名/移动完全分离,同时永远不会使项目处于无法编译的状态.
另外,为什么要等第6步呢?有时,特别是在较大的项目中,您可能希望移动另一个人正在编辑的文件.Perforce会帮助你解决这个问题.通过等待删除文件,您允许您的同事完成编辑并提交,而无需手动移动他们的工作.提交编辑后,可以将它们集成到新文件中,然后可以安全地删除旧文件.