2

即使在我删除了最后一个变更列表之后,我的主线流仍然认为开发流需要合并,我将感谢一些帮助来解决这个问题。

简而言之:

我的主线流(名为 Main)有 2 个开发流,其中一个名为 Tintin。直到今天早些时候,从 Main 开始的所有内容都已合并到开发流中。其中一个流已经快2年没有复制到主线了,所以有很多修改的文件,需要进入主线。

使用 P4V,我选择了开发流并运行了副本 - 由于 2 年前的一些重命名(我的更改列表 81402),它停止了警告或错误所以经过一些阅读,我了解到我应该将副本的范围限制为更改列表81402,完成得很好,并导致主线流上的更改列表 124031。

但是现在 Perforce 坚持我必须先向下合并,然后才能允许我进行第二次复制到主线,结果更改列表看起来完全不像我预期的那样。

所以我在更改列表上运行了 p4 obliterate 但出现了一个小错误:

p4 obliterate //Streams/Tintin/...@124031

但这应该是没有路径的,就像这样

p4 obliterate //...@124031

现在 perforce 说文件版本和集成已经消失(如预期的那样),但更改列表 124031 仍然存在,尽管它不包含任何文件。

我希望强制忘记有关更改列表 124031 的所有内容,这样我就可以重新将开发流再次复制到主线。

4

1 回答 1

0

可能在您的合并和尝试复制失败之间的时间里,您现在尝试复制的流上进行了更多更改,这将导致 Perforce 需要另一个合并。

我建议锁定有问题的开发流

右键单击流>编辑流>高级>选中将文件提交到限制为流所有者的流旁边的框

执行从 Main 到 dev 的合并。

执行从 dev 到 main 的复制。

如果这样做/不能解决问题,请告诉我。

补充说明: 您也可以简单地删除不需要使用 obliterate 的过度杀伤路线的变更列表。消除是危险的,因为它会删除历史/元数据/等中发生的任何事情的任何记录。

右键单击更改列表并选择恢复,完成后您可以删除待处理的更改列表。

于 2016-01-06T19:53:11.733 回答