Perforce与已删除目标的集成

时间:2012-03-02 00:29:54

标签: version-control integration perforce

有时我们想要将一个分支的变更集成到另一个分支,但有效地忽略了源变更。通常我们使用resolve -at执行此操作,这意味着“只是忽略源更改”,并保持目标不变。但是,此操作仍会影响Perforce元数据,因为它现在了解所讨论的源修订已集成到目标中,因此它们不会出现在将来的集成中。

但是,如果删除了任何目标文件,则解析将失败,并显示以下错误:

<dest> - can't branch from <source> without -d or -Dt flag

好的,请使用-Dt标志,然后重新添加文件。但是,它不符合解决条件,所以我不能使用-at,任何提交都会重新创建文件,这不是我想要的(这是为了保持目的地不变)。

有什么办法可以做我想要的吗?我不想为目标中的每个删除修改branchspec,事实上这些修改可能不适合我不希望这种“无操作”行为的分支。

1 个答案:

答案 0 :(得分:13)

较新版本的Perforce服务器(2011.1)为此提供了解决方案。来自the release注释:

  

在一个分支中编辑文件并删除时              另外,一个特殊的决心将被安排接受或              忽略分支或删除操作。 (这取代了              旧的“不能分支/删除没有-d标志”警告。)              “{p4 integration”的-Rb-Rd标志将强制所有分支              并删除要解决的操作,允许它们              即使他们没有发生冲突也会被忽视。