如何配置Araxis与Git扩展的合并



如何使用Git扩展配置Araxis合并/差异?

我试图用"Git Extensions"配置Araxis merge工具,但没有找到任何帮助,所有链接或搜索都只指向Git(使用shell)。由于Git Extensions是GUI工具,它有一个选项(在全局设置中)可以为mergediff等配置不同的工具。

difftool下拉列表中,我选择Araxis,它会自动选择安装位置的正确路径

C:/Program Files (x86)/Araxis/Araxis Merge/AraxisGitDiff.exe

mergetool下拉

C:/Program Files (x86)/Araxis/Araxis Merge/AraxisGitMerge.exe

然而,它们中的每一个都有一个额外的文本框,其中包含difftool命令mergetool命令,我在中尝试了以下命令

AraxisGitDiff.exe $1 $2

请记住,上面的命令将替换从Git扩展中选择的1和2,当我右键点击一个文件并选择选项"Open with difftool"->"A <-> B "时,屏幕上什么都不会出现

类似于

AraxisGitDiff.exe $LOCAL $REMOTE

不起作用

我清空了这个文件,我看到了以下错误。

---------------------------
Araxis Merge Command Line Compare Utility v7.0
---------------------------
Usage:
araxisgitdiff [/? | /h] <path> <old-file> <old-hex> <old-mode> <new-file> <new-hex> <new-mode>
---------------------------
OK   
---------------------------

我使用的设置是:

  • Mergetool-Araxis
  • Path to mergetool-C:Program FilesAraxisAraxis MergeCompare.exe
  • Mergetool command-/merge /wait /a2 /3 "$LOCAL" "$BASE" "$REMOTE" "$MERGED"

  • Difftool-轴

  • Path to difftool-C:Program FilesAraxisAraxis MergeCompare.exe
  • Difftool command-留空

合并时,左窗格将是本地文件,右窗格将是远程文件。中心窗格包含基本文件(或公共祖先),您必须合并到此文件/窗格中。

更新-2018-02-19

似乎较新版本的GitExtensions可能无法使用上述设置。下面的更改应该可以解决任何问题。

  • Mergetool-阿轴
  • Path to mergetool-"C:Program FilesAraxisAraxis MergeCompare.exe"
  • Mergetool command--merge -max -wait -a2 -3 "$LOCAL" "$BASE" "$REMOTE" "$MERGED"

  • Difftool-轴

  • Path to difftool-"C:Program FilesAraxisAraxis MergeCompare.exe"
  • Difftool command--max -2 -wait "$LOCAL" "$REMOTE"

请注意,现在工具的路径周围有双引号。

以下步骤已经用Git Extensions v2.47.3进行了测试。

使用Araxis Merge进行文件比较和文件合并:

  • 在Git Extensions浏览器中,从"工具"菜单中选择"设置"。

  • 在"设置"窗口中,从左侧的树中选择"全局设置"。

  • 在"合并工具"下拉字段中,选择"Araxis"。

  • 在Path to mergetool字段中,输入以下内容:

    C:/Program Files/Araxis/Araxis Merge/Compare.exe

  • 在Difftool下拉字段中,选择araxis。

  • 在Path to difftool字段中,输入以下内容:

    C:/Program Files/Araxis/Araxis Merge/Compare.exe

:源

基于Wade的回答,我最终将Araxis文件夹(包含Merge.exe)添加到PATH中,然后在我的.gitconfig:中使用它

[diff]
tool = araxis
[difftool]
prompt = false
[difftool "araxis"]
cmd = merge $LOCAL $REMOTE

我遇到了同样的问题,并通过从kdiff3复制模式设法找到了一个可行的解决方案。这似乎适用于Araxis 2010和可能的大多数后续版本

Mergetool
Araxis
Path to mergetool
C:/Program Files/Araxis/Araxis Merge/Merge.exe
Mergetool command
"C:/Program Files/Araxis/Araxis Merge/Merge.exe" "$LOCAL" "$REMOTE" "$MERGED$"
Difftool
Araxis    
Path to difftool
C:/Program Files/Araxis/Araxis Merge/Merge.exe
Diftool command
"C:/Program Files/Araxis/Araxis Merge/Merge.exe" "$LOCAL" "$REMOTE"

最新更新