我正在使用p4merge
作为Accurev的外部合并工具。我为 p4merge 创建了一个包装器,并为acgui
(工具-首选项-差异/合并)和 CLI(AC_MERGE_CLI变量)设置了命令"p4m -dw -tw 8 -nb %3% -nl %4% -nr %5% %a% %1% %2% %o%
"。
它在acgui
中成功运行,但是当我使用CLI版本(accurev merge <filename>
)时,Accurev不会传递%3
,%4
和%5
的文件标题。
怎么了?如何获取 CLI 的文件标题?
UPD:我正在使用 Accurev 6.0.1
diff 和 merge 的命令需要不同,因为AccuRev 不会为两者传递相同的参数。您需要参考 AccuRev 用户 CLI 指南,了解这两个命令的有效参数列表。
我能够使用以下方法使差异工作:
c:Program FilesPerforcep4merge.exe -dw -tw 4 -nl "%3%" -nr "%4%" %1% %2%
请注意左右标题两边的双引号,以及基/祖先参数的省略。此外,在差异中,没有预期的输出文件。
由于 P4Merge 如何处理 AccuRev 给出的输出文件名,合并命令不起作用。我收到一条错误消息,指出输出临时文件无效。但是,AccuRev 希望合并工具在完成后创建文件,因此这是 P4Merge 的一个缺点。以下内容可能是与Perforce人员讨论的良好起点:
c:Program FilesPerforcep4merge.exe -dw -tw 4 -nb "%3%" -nl "%4%" -nr "%5%" %a% %1% %2% %o%