perforce中有一个interchanges
命令,该命令列出了两个分支之间的变更列表,这些变更列表尚未使用branchspec
进行集成。
是否有一些东西显示已集成的变更列表,例如interchanges
的反面,并且还可以与branchspec
一起使用?
对终端性能而非p4v更感兴趣。
谢谢
答案 0 :(得分:3)
我推荐的方法是在源上执行p4 changes
,在源和目标之间运行p4 interchanges
,以获取尚未集成的源更改,并比较两者以查找那些已集成。
我还将介绍不建议使用的其他两种方法,因为它们比较难(但是您可能会发现其中的元素很有用):
p4 changes -i
,然后运行许多p4 files
命令以将其过滤到源于源的更改。p4 integrated -b branch
,运行大量p4 changes
命令以将集成记录转换为变更列表范围,然后将它们排序为统一列表。答案 1 :(得分:0)
要查找更改列表是否已在perforce中集成到另一个分支中并不容易。 “ p4互换”可能不会报告所有内容,因为它依赖于元数据,并且可能“认为”某些变更列表已集成。
请考虑将CL10合并到分支B,然后通过“ p4编辑”而不是B上的“ p4撤消”手动还原更改的情况。然后,如果您对CL10运行“ p4集成”,则perforce将返回“已经”集成”消息,即使代码不再存在(但可能需要)。
也许您的问题的解决方案可能涉及将来自Sam上面回答的思想,“ p4互换”以及在循环中运行“ p4集成[-f]”以确认确实集成了一组变更列表。这是一项工作,因为需要考虑“ p4 resolve”和“ p4 diff / diff2”的输出。
我的观点是:不要仅仅依靠“ p4互换”。