在 Git Bash 中无法将 Meld 设置为 diff 工具
Unable to set Meld as a diff tool in Git Bash
谁能帮我弄清楚如何让 Meld 在 Git Bash 上工作 Windows 10?我遵循了一些说明,但对我来说都不起作用。
输入这些命令后,没有任何反应:
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
使用 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.
我也试过了;
- /c/Progra~2/meld/bin/
- "/c/Program 个文件 (x86)/Meld/"
- "c:/Program files (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
你的路径写得不好,少了space个字符
你应该定义 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
编辑:
如果您想要 Git 有效工具的指南,您可以通过以下方式查看:
git difftool --tool-help
总之,经过我们的交流,你决定使用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\""
我也在 Git Bash Windows 10 上使用,此配置适用于 Meld :
diff.guitool=meld
merge.tool=meld
difftool.meld.path=C:/Program Files (x86)/Meld/meld/meld.exe
mergetool.meld.path=C:/Program Files (x86)/Meld/meld/meld.exe
谁能帮我弄清楚如何让 Meld 在 Git Bash 上工作 Windows 10?我遵循了一些说明,但对我来说都不起作用。
输入这些命令后,没有任何反应:
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
使用 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.
我也试过了;
- /c/Progra~2/meld/bin/
- "/c/Program 个文件 (x86)/Meld/"
- "c:/Program files (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
你的路径写得不好,少了space个字符
你应该定义 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
编辑:
如果您想要 Git 有效工具的指南,您可以通过以下方式查看:
git difftool --tool-help
总之,经过我们的交流,你决定使用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\""
我也在 Git Bash Windows 10 上使用,此配置适用于 Meld :
diff.guitool=meld
merge.tool=meld
difftool.meld.path=C:/Program Files (x86)/Meld/meld/meld.exe
mergetool.meld.path=C:/Program Files (x86)/Meld/meld/meld.exe