【问题标题】:How to find the previous submitted change lists?如何找到之前提交的变更列表?
【发布时间】:2018-09-10 09:20:39
【问题描述】:

是否有一个 Perforce 命令来查找特定分支上给定提交的 CL 的前一个提交的更改列表。

例如在一个分支上 //depot/temp/1.0/... 我已经提交了 CL11、CL22、CL36、CL49 等 .. 所以对于一个给定的提交 CL (CL36),我怎样才能找到它的前一个CL即CL22?

我尝试运行 p4 更改 //depot/temp/1.0/... 以便它为我提供所有更改列表,然后我解析它们以获得所需的 CL

但我正在寻找直接的 p4 命令来实现这一点

【问题讨论】:

    标签: perforce changelist


    【解决方案1】:

    除了pitseeker 的回答,下面是如何在没有Unix 命令的情况下执行最后两个:

    以下命令仅列出更改 36 之前的更改:

    p4 changes -m1 "//depot/temp/1.0/...@<36"
    p4 changes -m1 //depot/temp/1.0/...@35
    

    (请注意,您需要在 @&lt; 语法中使用引号,否则您的 shell 会将其视为重定向。在使用更改编号执行此类操作时,我个人更喜欢“减 1”方法——它们的一大好处拥有超过标签或提交哈希 IMO 是因为您可以像数字一样推理它们。)

    以下命令只列出更改36之前的更改号:

    p4 -Ztag -F %change% changes -m1 //depot/temp/1.0/...@35
    

    【讨论】:

    • 您不应该添加-s submitted 以将其限制为已提交的更改并忽略待处理的更改吗?
    • 修订范围是指提交的修订,因此您只能从此命令获得提交的更改。
    【解决方案2】:

    以下命令列出路径中的所有更改 //depot/temp/1.0/...:

    p4 changes //depot/temp/1.0/...
    

    以下命令列出了更改 36 之前的所有更改:

    p4 changes //depot/temp/1.0/...@36
    

    以下命令列出了更改 36 和它之前的更改:

    p4 changes -m2 //depot/temp/1.0/...@36
    

    以下命令仅列出更改 36 之前的更改:

    p4 changes -m2 //depot/temp/1.0/...@36 | tail -1
    

    以下命令仅列出更改 36 之前的更改编号(在您的情况下为 22):

    p4 changes -m2 //depot/temp/1.0/...@36 | tail -1 | cut -f2 -d' '
    

    【讨论】:

      猜你喜欢
      • 2012-11-28
      • 1970-01-01
      • 1970-01-01
      • 2019-11-16
      • 1970-01-01
      • 2012-08-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多