2011-05-20 60 views
11

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

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

...这是我想要的东西,相反却明确指出,有办法做到这一点使用多个命令。我可以想到使用多个命令来获得我想要的几种方法,但在我走下这条路之前,我想确保没有简单的方法来做到这一点。

回答

17

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

p4 interchanges -b mybranch 

将按照分支规范定义的报告未整合变化。像'p4 integ'一样使用'-r'来反转分支映射。 Filespecs也可以在命令行上给出的,如果你没有一个分支规范:

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

将在非集成变动报告书,从主到的RelA

与任何无证/不支持的功能,你需要请注意输出。可能有些情况会导致返回不准确的信息。然而,我对这个命令的经验很棒。该命令在Laura Wingerd的“Practical Perforce”一书中有简要描述。我的观点是,这个命令可能很快就会看到它的一般帮助。

希望这会有所帮助。

+0

工作完美。谢谢! – Karim 2011-05-20 18:38:02

+1

这个命令的弱点在于樱桃挑选的整合。它会报告它们仍然未决。您可以通过对结果进行预览整合来过滤掉这些内容,但这会增加一些时间。 – JasonMArcher 2011-06-28 05:58:04

+0

上面提到的问题在版本12.1及以上版本中不存在。 – JasonMArcher 2014-01-20 20:37:14

0

的换乘命令等显示结果下面

变化#Changelist数量上#Date通过#人@#工作区#Description。

如果您需要显示选择性列以供进一步处理(生成报告)。你可以在Linux/Unix上试试下面的东西。

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

试着阐述你的答案。 – vrajs5 2015-03-31 08:02:55

相关问题