合并搞砸后如何在P4中合并

How to merge in P4 after a merge is messed up

所以我通过 cmd 进行了合并,但结果并不理想,所以我取消了那个 CL(通过可视化客户端),现在如果我尝试再次合并这两个流,我会得到 window 说 Integration errors: //project_stream/main/... - all revision(s) already integrated. 是不是说没有办法再合并了?

如果您通过 p4 undo 撤消集成并且设置了 dm.integ.undo 可配置项,您可以完全按照您尝试的方式重新进行集成。

(p4 help undoc)
        dm.integ.undo            0 Enable re-integration of undone changes

如果无法满足这两个条件(即您使用不使用本机 undo 命令的 P4V 版本执行撤消 and/or,您将无法获得管理员权限要翻转该可配置设置),您必须重新集成 -f 标志。

-f 标志强制集成而不考虑以前的历史,这允许您重做集成——但是,您需要明确告诉它要集成哪个 revisions/changelists,and/or 在解决过程中要格外小心。仔细查看原始变更列表中的集成记录,找出最早的源变更列表,然后执行:

p4 integ -f source/...@SOURCE_START,@now target/...

SOURCE_START 之前的修订版将用作解析过程中的基础。