【问题标题】:Perforce: Re-reverse-integrating a changelistPerforce:重新反向集成变更列表
【发布时间】:2009-11-02 18:45:29
【问题描述】:

(我有 already asked this on SU;虽然我很欣赏那里的 Tumbleweed 徽章,但我更希望得到答案......)

我有一个未决的反向集成,我想对已签出以进行集成的文件再次执行。用例是当我在集成源中进行了更改并且我想再次将其传播到集成目标时,但我不想对整个分支规范执行集成 - 只是我已经拥有的文件已开放集成。有没有自动的方法来完成这个?

更新:

我使用的是命令行工具,而不是 p4v 或其他 GUI。另外,请考虑我可能还打开了其他文件的可能性,例如,p4 opened 中的文件集可能是我感兴趣的更改列表的超集。

【问题讨论】:

  • 很高兴知道您使用的是命令行“p4”还是某些 UI 版本(p4v?)...

标签: integration perforce repeat changelist


【解决方案1】:

Perforce 因不提供完整的工具而臭名昭著,只提供您可以管道和处理的东西。你可以尝试做类似的事情

for file in `p4 opened` do
  p4 integ $file $somedestination/$file
done

【讨论】:

    【解决方案2】:

    您的意思是要恢复现有集成并重新进行集成以包括最近提交的更改?如果是这样,这样的事情可能会起作用:

    p4 opened | sed -e 's:#.*::' > filespecs
    xargs < filespecs | p4 revert
    xargs < filespecs | p4 integrate -b branch
    

    第一个命令是无害的,但其他两个是破坏性的,因此通过在 p4 命令之前添加“echo”来测试以确保生成的命令 p4 命令看起来对您来说是正确的。例如:

    xargs < filespecs | echo p4 revert
    xargs < filespecs | echo p4 integrate -b branch
    

    【讨论】:

      猜你喜欢
      • 2013-07-10
      • 2012-02-15
      • 2012-04-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-09
      • 1970-01-01
      相关资源
      最近更新 更多