获取尚未集成到特定分支的更改列表的列表

时间:2011-05-20 16:29:52

标签: perforce perforce-integrate

如果我有分支A和分支B.分支B从分支A分支。我们定期将分支B的更改集成到分支A.是否有用于列出尚未集成的分支B变更列表的p4命令进入分支A?我可以想到一些原因,这可能是不可能的,因为更改列表的文件不一定限于一个分支,但我希望在这里最好。

我发现了这个问题:Is it possible to list the changelists that have been integrated to a workspace?

...这与我想要的相反,但是明确表示有多种方法可以使用多个命令来完成此操作。我可以想到使用多个命令来获得我想要的东西,但在我走这条路之前,我想确保没有简单的方法来做到这一点。

2 个答案:

答案 0 :(得分:18)

您想使用'interchanges'命令。它目前不受支持(从10.2版开始),但'p4 help interchanges'将为您提供该工具的命令行用法(目前仅在命令行上可用)。我不记得具体介绍了这个命令的版本。

p4 interchanges -b mybranch

将报告分支规范定义的未集成更改。像'p4 integ'一样使用'-r'来反转分支映射。如果您没有分支规范,也可以在命令行上提供Filespec:

p4 interchanges //depot/main/... //depot/RelA/...

将报告从main到RelA的未集成更改

与任何未记录/不支持的功能一样,您需要小心输出。可能存在某些情况导致返回不准确的信息。然而,我对这个命令的经验非常棒。 Laura Wingerd在“Practical Perforce”一书中简要描述了该命令。我的观点是,这个命令可能会很快成为一般帮助。

希望这有帮助。

答案 1 :(得分:0)

交换命令显示结果如下

通过#Person @#Workspace #Description更改#Date上的#Changelist Number。

如果需要显示选择性列以进行进一步处理(生成报告)。您可以在Linux / Unix上尝试类似下面的内容。

p4 interchanges //depot/branch1/... //depot/branch2/... | awk '{print $2"|"$4"|"$6"|"substr($0,index($0,$7)) }'