如何调用TortoiseMerge Perforce的P4V?(How to use Tortois

2019-10-17 06:45发布

如何配置Perforce公司使用的工具TortoiseMerge用来diff和合并?


我试图论证

/base:%1 /mine:%2

以下http://tortoisesvn.net/docs/release/TortoiseMerge_en/tme-automation.html和http://www.perforce.com/perforce/doc.current/manuals/p4v/Configuring_display_preferences.html#Diff 。 Perforce的文件说

指定在参数字段第三方应用DIFF参数:第一个文件,2%为第二个文件的名称的名称输入%1。 P4V调用DIFF应用程序时,替换这些占位符的实际文件名。

然而,当我尝试它,TortoiseMerge中的错误“无法打开文件%1”,暗示P4V并没有取代论据和离开%1原样

Answer 1:

您可以通过创建一个批处理文件做到这一点。 在bat文件,你可以调用具有正确参数的合并计划。 这是我的bat文件的内容:

TortoiseMerge.exe /base:%1 /theirs:%2 /mine:%3 /merged:%4

在P4设置%b %1 %2 %r

正如你可以看到我叫我的bat文件“p4Helper.bat”



Answer 2:

可悲的是P4V的说法更换坏了。 你可以使用TortoiseMerge用来版本比较,而不是合并。

要设置TortoiseMerge用来版本比较,使用参数字符串%1 %2

对于合并的正确参数会

/base:%b /theirs:%1 /mine:%2 /merged:%r

但是它给这个错误

据推测,这是怎么回事是P4V不能取代“%B”在/base:%b使用适当的文件路径。



Answer 3:

有一个现有的扩展请求,因为P4V不如果这些参数不是本身为%B,%1,%2和%R替代值。 例如,P4V不能代替:

 /base:%b /theirs:%1 /mine:%2 /merged:%r

其通过的TortoiseMerge需要。

然而,一个用户报告说,该命令是由于它的空间工作,一旦他加入周围路径引号。 例如:

开始/ WAIT “C:/程序文件/超越比较3 / BComp.exe” %1%2%3 / mergeoutput =%4

因此,作为一种解决办法,可以在调用的TortoiseMerge脚本增加的%B%1%2%R参数。 在TortoiseMerge中的情况下,你会有这样一行:

 c:"\the_path_to_TortoiseMerge" /base:%1 /theirs:%2 /mine:%3 /merged:%4


文章来源: How to use TortoiseMerge from Perforce P4V?