【问题标题】:p4 shelve after editing the shelved files along with other filesp4 shelve 编辑搁置的文件和其他文件后
【发布时间】:2014-04-16 12:32:29
【问题描述】:

我已搁置文件a.txt, b.txt, c.txt

现在我想对 a.txt 和 b.txt 进行一些更改并搁置新文件 d.txt

所以,

  1. 作为第一步,使用 p4 unshelve -s <changelist> 取消搁置搁置的 a.txt、b.txt 和 c.txt
  2. 更改 a.txt、b.txt 和 c.txt
  3. 现在该怎么办???? (到这里为止我很好,现在应该如何搁置 a.txt 、b.txt、c.txt 以及 d.txt 的更改)

注意:在第 2 步之后,作为第 3 步,如果我再次尝试只给p4 shelve,它只会显示 d.txt 搁置,而不是 a.txt b.txt 和 c.txt。

有什么简单的方法吗?

【问题讨论】:

    标签: perforce


    【解决方案1】:

    当您执行p4 shelve 时,您应该得到一个更改编号。如果你不记得了,p4 opened 会告诉你。您需要重新打开 d.txt 并使用 p4 reopen -c <change#> d.txt 为其提供更改编号。然后运行p4 shelve -r 来更新搁置的文件。

    【讨论】:

    • 最后一步是 p4 shelve -r -c
    【解决方案2】:

    正如其他人在他们的回答中指出的那样,当您搁置它们时,所有文件都必须位于同一个更改列表中,因此您需要将它们重新打开到正确的更改列表中才能更新原始搁板。

    不过,我想鼓励您避免更新书架的习惯。

    根据我的经验,创建一个新书架并保留旧书架作为更改的原始“版本”几乎总是更好。

    书架本身没有版本控制,因此当您更新书架时,您会用最新的副本覆盖之前的书架副本。

    当您进行迭代更改并使用搁架捕获它们的快照时,创建多个搁架非常好,每个快照一个搁架,这样您就可以在整体更改的不同方法之间来回切换。

    毕竟,您可能决定根本不需要 d.txt,而您想回到只使用 a.txt、b.txt 和 c.txt 的方法。

    如果您创建了两个单独的书架,您可以在它们之间来回移动,以随心所欲。

    然后,一旦您最终决定(并使用“提交 -e”提交了您决定的架子),您可以通过运行“搁置 -d -c NNN”和“更改 -d NNN”来丢弃其他架子' 并且服务器将完全清理那些不再需要的架子使用的所有资源。

    【讨论】:

    • 能否请您提供有关此过程的更多详细信息?我添加了文件 a.txt 和 b.txt,做了“p4 shelve”,修改了 b.txt 添加了 c.txt,做了“p4 shelve”。我的第二个书架只包含 c.txt。我对 b.txt 所做的更改都没有搁置。
    【解决方案3】:

    下面的图片将显示它的图片

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多