【问题标题】:Is there a way to get Perforce to revert unchanged files pending integration?有没有办法让 Perforce 恢复未更改的文件等待集成?
【发布时间】:2014-06-19 18:38:02
【问题描述】:

我正准备将我们的“Dev”分支集成到我们的“Testing”分支中,为即将发布的版本做准备。

对于我们的上一个版本,在初始集成之后,我们确定有一些我们不想发布的更改。我回滚了测试分支中的一些文件,并注释掉了其他文件的一部分。其中许多文件在 Dev 分支中没有更改,因此就 Perforce 而言,它们已经被集成并且可以继续使用。

显然,我可以追踪更改列表并取消回滚这些文件。我还可以使用“-f”选项集成有问题的文件以忽略集成历史记录。

但我希望找到一种“自动”执行此操作的方法。我尝试将整个分支与“-f”集成,解析,然后恢复未更改的文件,但这只是给出了消息:<filename> has pending integrations, not reverted

有没有办法让 Perforce 恢复等待集成的未更改文件?我应该采取其他方法吗?

【问题讨论】:

    标签: perforce p4v


    【解决方案1】:

    您是否尝试过“未还原的待处理集成”下的以下步骤?

    http://answers.perforce.com/articles/KB_Article/Reverting-Unchanged-Files

    即使您在客户端规范中选择了“revertunchanged”或使用“submit -f revertunchanged”,已集成和解析但没有内容或类型更改的文件仍将作为新修订版提交。这种行为是设计使然,但并不明显。

    同样,如果提交会更改文件的集成历史记录,那么即使内容没有更改,该文件也会被视为已更改。换句话说,集成历史记录的更新被视为文件更改,就像内容、类型和属性更改一样。

    'revertunchanged' 选项的命令行等效项 p4 revert -a 提供了一些上下文。从 p4 帮助还原:

    -a 标志仅恢复为编辑或集成而打开的文件 并且没有改变或丢失。具有待处理集成记录的文件 保持打开状态。当指定 -a 时,文件参数是可选的。

    例如:

    $ p4 revert -a b
    //depot/test/b#1 - has pending integrations, not reverted
    

    建议关注在没有内容更改的情况下集成文件的用户使用'p4 diff -sr | p4 -x- 还原'。例如:

    $ p4 diff -sr | p4 -x- revert 
    //depot/test/b#1 - was integrate, reverted
    

    如果这有帮助,请告诉我。

    【讨论】:

    猜你喜欢
    • 2013-10-24
    • 2013-07-22
    • 1970-01-01
    • 2012-11-04
    • 2021-11-06
    • 2019-08-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多