无法将 Meld 设置为 Git Bash 中的差异工具

Abd*_*çam 5 windows git bash user-interface meld

有人可以帮我弄清楚如何让 Meld 在 Windows 10 的 Git Bash 上运行吗?我遵循了一些说明,但都不适合我。

当我输入这些命令后,什么也没有发生:

git config --global diff.tool meld
git config --global difftool.meld.path "/c/Program Files(x86)/Meld/Meld.exe"
git config --global difftool.prompt false
Run Code Online (Sandbox Code Playgroud)

使用git difftool命令后,我收到这个奇怪的错误:

git config option diff.tool set to unknown tool: merge
Resetting to default...

This message is displayed because 'diff.tool' is not configured.
See 'git difftool --tool-help' or 'git help config' for more details.
'git difftool' will now attempt to use one of the following tools:
opendiff kdiff3 tkdiff xxdiff meld kompare gvimdiff diffuse diffmerge ecmerge p4merge araxis bc codecompare emerge vimdiff
2 files to edit.
Run Code Online (Sandbox Code Playgroud)

我也尝试过;

  • /c/Progra~2/meld/bin/
  • “/c/程序文件(x86)/Meld/”
  • “c:/程序文件(x86)/Meld/”

我的配置文件:

[user]
    name = user
    email = email@sample.com

[merge]
    tool = meld

[mergetool "meld"]
    cmd = meld --auto-merge \"$LOCAL\" \"$BASE\" \"$REMOTE\" --output \"$MERGED\" --label \"MERGE (REMOTE BASE MY)\"
    trustExitCode = false

[mergetool]
    prompt = false
    keepBackup = false

[diff]
    guitool = meld

    tool = meld
[difftool "meld"]
    cmd = meld \"$LOCAL\" \"$REMOTE\" --label \"DIFF (ORIGINAL MY)\"
    path = C:/Program Files(x86)/Meld/Meld.exe
[difftool]
    prompt = false
Run Code Online (Sandbox Code Playgroud)

Bsq*_* ℬℬ 2

你的路径写得不好,缺少空格字符。

你应该定义cmd而不是path.

最终,这应该对你有用:

git config --global diff.tool meld
git config --global difftool.meld.cmd "\"C:/Program Files (x86)/Meld/Meld.exe\" \"\$LOCAL\" \"\$REMOTE\""
git config --global difftool.prompt false
Run Code Online (Sandbox Code Playgroud)

编辑:

如果您想要有效工具的 Git 指南,您可以使用以下命令进行检查:

git difftool --tool-help
Run Code Online (Sandbox Code Playgroud)

不管怎样,经过我们的交流,你决定使用P4merge;这是我的答案的后续更新。

这是设置它的方法:

git config --global merge.tool p4merge
git config --global mergetool.p4merge.cmd "\"C:/Program Files (x86)/Perforce/p4merge.exe\" \"\$LOCAL\" \"\$REMOTE\""
git config --global diff.tool p4merge
git config --global difftool.p4merge.cmd "\"C:/Program Files (x86)/Perforce/p4merge.exe\" \"\$LOCAL\" \"\$REMOTE\""
Run Code Online (Sandbox Code Playgroud)