如何在取消保存文件时指示Perforce进行合并而不是覆盖或还原?

Der*_*har 19 perforce unshelve shelving

当取消搁置在软件仓库中的文件时,如何指示Perforce将更改合并到工作区中的现有,打开和修改的文件中?Perforce似乎为用户提供的唯一选项是覆盖或还原工作区中的现有文件,但这不允许,例如,从多个更改列表中取消搁置并将更改集成到同一文件中.有没有解决这个限制的方法?

Cha*_*nce 26

我通常做的是右键单击搁置的文件并选择"Diff Against Workspace File".打开Diff工具时,可以在工具栏中选择"在右窗格中编辑文件"按钮.这基本上开始了双向合并.通过每个差异,您可以从搁置文件中选择所需的更改(默认情况下,从工作区文件中选择差异).

但是,如果Perforce添加了一种合并功能来更自动地执行此操作,那就太好了.

编辑添加: Perforce现在具有内置功能,可在取消搁置时合并文件.如果用户取消搁置也已检出的文件,并取消选中"在取消搁置之前恢复已检出文件",则Perforce会将该文件标记为已解决.我查看了发行说明,但无法找到添加此功能的版本,但基于此链接(请参阅p4 unshelve说明底部附近),它的添加时间不晚于2012.1.

再次编辑添加: 该功能已在服务器的2011.1版中添加.这是发行说明:

#299614 (Bug #38221, #39099) **
    Unshelving a file opened for edit over a file already opened
    for edit in the workspace is now allowed. A resolve record is
    created when unshelving, and the user must then run 'p4 resolve'
    to resolve the workspace files with the shelved files.
Run Code Online (Sandbox Code Playgroud)