我目前在C:\Users\me\.gitconfig
中具有以下内容
[merge]
tool = intellij
[mergetool "intellij"]
cmd = cmd.exe //c "\"C:/Program Files/JetBrains/IntelliJ IDEA 2018.1.5/bin/idea.bat\" merge \"$LOCAL\" \"$REMOTE\" \"$BASE\" \"$MERGED\""
trustExitCode = true
[diff]
tool = intellij
[difftool "intellij"]
cmd = cmd.exe //c "\"C:/Program Files/JetBrains/IntelliJ IDEA 2018.1.5/bin/idea.bat\" diff \"$LOCAL\" \"$REMOTE\""
当我做git difftool
时我会得到
'C:/Program' is not recognized as an internal or external command,
operable program or batch file.
[Git Docs]中提到了
识别以下转义序列(在\“和\旁边):\ n 对于换行符(NL),\ t用于水平制表符(HT,TAB), \ b用于退格键(BS)。其他字符转义序列(包括八进制) 转义序列)无效。
我还查看了Syntax for specifying Windows paths并尝试了一些组合:
# Escape spaces
Program\\ Files
Program/ Files
Program\ Files
# Backslashes
C:\Program Files\...
# 'C:\Program' is not recognized
但是没有一个起作用,正确的方法是什么?
答案 0 :(得分:0)
一种方法是测试unix语法
cmd = "/C/Program Files/JetBrains/IntelliJ IDEA 2018.1.5/bin/idea.bat"...
另一种方法是将C:/Program Files/JetBrains/IntelliJ IDEA 2018.1.5/bin
添加到您的%PATH%
中,使您可以直接引用bat文件。
cmd = cmd.exe /c idea.bat ...