如何在 Perforce 中创建一个新的 Shelve Changelist

How to create a fresh Shelve Changelist in Perforce

我对工作区 A 中的几个文件(比如说 F1、F2、F3)进行了一些更改。我搁置了这些更改(搁置 ID#1)(到目前为止没有问题)并将这些更改取消搁置到新的工作区 B (没有问题)。在 B 中取消搁置后,我对工作区 B 中的文件(F2、F3、F4 和 F5)进行了一些更改。现在我想将更改从工作区 B 移动到新的工作区 C。这里我遇到了问题。

  1. 当我尝试从工作区 B 搁置时,它在搁置列表 (Shelved Id#2) 中仅列出了文件 F4 和 F5,而不是所有修改过的文件(F1、F2、F3、F4 和 F5)。当我执行 $P4 opened ... 时,它列出了所有 5 个修改的文件,但是,搁置的 CL 只接受在专用工作区 B 中修改的文件。
  2. 我尝试取消搁置 ID 1 和 2)。但是,我没有得到文件 F2 和 F3 中工作区 B 中所做的更改。

如何将我的所有更改(所有 5 个文件)从工作区 B 更改到工作区 C。 更具体地说,我如何从包含所有更改的工作区 B 创建新的搁置,而不仅仅是 post 取消搁置的更改。

希望有人能尽快帮助我。

要获取您当前在工作区 B 中打开的所有文件,并创建一个包含所有这些更改的新文件架,请执行以下操作:

p4 reopen -c default //...
p4 shelve

第一个命令获取所有打开的文件,并将它们与默认更改列表相关联。

第二个命令获取默认更改列表中当前打开的所有文件,并使用这些更改创建一个新的架子。