Perforce挂起的更改列表差异脚本

时间:2012-03-09 00:47:07

标签: diff perforce patch

有人有这样的脚本要分享吗?

  • 将待处理的变更清单编号作为输入
  • 输出统一的差异(包括打开以供添加的文件)

我从经验中知道,许多与perforce一起工作的人都会吵架。当通过“p4 diff”对新添加的文件进行差异化时,我可以真正使用“文件不在客户端视图”的整个问题的帮助。

3 个答案:

答案 0 :(得分:1)

我没有时间找到合适的解决方案,所以我使用了这个衬垫:

p4 describe $CHANGELIST | sed -ne 's:^\.\.\. \(.*\)#[0-9][0-9]* [a-z][a-z]*$:\1:p' | xargs p4 diff -du

以下是它的工作原理:

自 -

  

...待更改列表显示为“待处理”,并且不显示文件差异。

p4 describe $CHANGELIST

本身不会这样做,但你可以用它作为起点。它(除其他外)包含$CHANGELIST中已更改的文件列表。

sed -ne 's:^\.\.\. \(.*\)#[0-9][0-9]* [a-z][a-z]*$:\1:p'

仅打印<depot-file>

形式的行的... <depot-file>#<revision> <action>部分
xargs p4 diff -du

获取软件仓库文件列表并在其上运行p4 diff -du-d标记将u(统一格式)传递到您的$P4DIFF计划(应为diff)。

答案 1 :(得分:0)

这对我有用:

p4 diff2 //depot/a/b/c/... //depot/a/b/c/...@=$CHANGELIST | grep -v '<none>'

路径越具体,执行速度越快。 您也可以针对不同的分支对变更列表进行区分。

答案 2 :(得分:-1)

p4 describe -du changelist不适合你?