在我以前基于Windows 7的计算机上(我不能再参考它了,因为它死了),我使用了Perforce p4v客户端,并更改了它的首选项,使用Araxis作为diff应用程序。在该环境中,如果已经有一个打开的Araxis合并窗口,那么在p4v中执行diff将导致diff结果出现在已经打开的窗口的一个新选项卡中。
相反,在我的新的基于Windows 10的计算机上,我使用的是最新版本的p4v (191.183.0398),但使用的是同一版本的Araxis合并。在这个新的环境中,在p4v中执行一个diff总是会打开一个新的Araxis窗口,即使有一个已经打开的Araxis窗口。这不是我想要的。
是否有一种方法可以将p4v配置为使用diff应用程序中已经打开的窗口,而不是总是打开一个新窗口?
p4v以外的差异
问题似乎不在于我的diff应用程序,Araxis合并。作为一种测试,我可以通过中的上下文菜单执行一个diff。如果已经有一个打开的Araxis合并窗口,则以这种方式执行diff将导致diff结果出现在该现有窗口的新选项卡中。这就是我想要的。
这个测试似乎也排除了Windows 10操作系统的罪魁祸首。
发布于 2019-09-24 14:22:02
问题是,我将p4v配置为将Merge.exe作为diff应用程序执行。但是,Araxis还有另一个名为Compare.exe的可执行文件,我应该使用它。当我将p4v配置为使用Compare.exe时,在p4v中执行一个diff将按需要在已经打开的阿拉西斯合并窗口中打开一个新选项卡。
下面是正确的p4v配置的示例片段。在菜单中,goto > Preferences,然后转到Diff部分。

我终于明白了我在阅读Araxis命令行文档( https://www.araxis.com/merge/documentation-windows/command-line.en )时做错了什么,其中部分内容是:
不建议使用merge.exe启动文件和文件夹比较,除非您确实希望为每个比较创建一个新的合并实例。
https://stackoverflow.com/questions/57878817
复制相似问题