在取消搁置文件时,如何指示Perforce合并而不是覆盖或恢复?

在取消搁置文件时,如何指示Perforce合并而不是覆盖或恢复?,perforce,shelving,unshelve,Perforce,Shelving,Unshelve,在取消搁置仓库中搁置的文件时,如何指示将更改合并到工作区中的现有、打开和修改的文件中?Perforce似乎为用户提供的唯一选项是覆盖或还原工作区中的现有文件,但这不允许(例如)从多个更改列表中取消搁置和集成对同一文件的更改。有没有办法绕过这个限制?我通常会右键单击搁置的文件,然后选择“与工作区文件的差异”。打开Diff工具时,可以在工具栏中选择一个按钮“在右窗格中编辑文件”。这实质上启动了一个双向合并。使用每个差异,可以从搁置文件中选择所需的更改(默认情况下,从工作区文件中选择差异) 不过,如果

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

我通常会右键单击搁置的文件,然后选择“与工作区文件的差异”。打开Diff工具时,可以在工具栏中选择一个按钮“在右窗格中编辑文件”。这实质上启动了一个双向合并。使用每个差异,可以从搁置文件中选择所需的更改(默认情况下,从工作区文件中选择差异)

不过,如果Perforce添加了一种合并功能,以更自动地完成这项工作,那就太好了

编辑以添加: Perforce现在具有在取消搁置时合并文件的内置功能。如果用户取消搁置也已签出的文件,并且未选中“在取消搁置之前还原已签出的文件”,则Perforce将标记该文件以进行解析。我查看了发行说明,无法找到在哪个版本中添加了此功能,但基于此(请参见
p4 unshelve
description的底部),它在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.

如果您签出文件,然后尝试提交它,它将为您提供获取最新版本而不替换副本的选项。然后,它将使您能够运行合并工具,您必须在提交之前解决任何冲突