我试图为git配置DiffMerge以用于difftool和mergetool。我使用了以下命令: -
命令提示符窗口中的以下命令将更新.gitconfig以配置GIT使用DiffMerge:
C:\> git config --global diff.tool diffmerge
C:\> git config --global difftool.diffmerge.cmd
"C:/Program\ Files/SourceGear/Common/DiffMerge/sgdm.exe \"$LOCAL\"
\"$REMOTE\""`
如果我检查.gitconfig的内容,它有以下内容: -
` [diff]
tool = diffmerge
[mergetool "diffmerge"]
cmd = C:/Program\\ Files/SourceGear/Common/DiffMerge/sgdm.exe -merge -result=\"\" \"\" \"\" \"\"
trustExitCode = true
[merge]
tool = diffmerge
[difftool "diffmerge"]
cmd = C:/Program\\ Files/SourceGear/Common/DiffMerge/sgdm.exe \"\" \"\"
[core]
autocrlf = true
excludesfile = C:\\Users\\dev\\Documents\\gitignore_global.txt
[user]
name = DESKTOP - VAFJEG6\\dev
email = madsum.isalm2@gmail.com `
如果我尝试$ git config --global --list: -
diff.tool=diffmerge
mergetool.diffmerge.cmd=C:/Program\
Files/SourceGear/Common/DiffMerge/sgdm.exe -merge -result="" "" "" ""
mergetool.diffmerge.trustexitcode=true
merge.tool=diffmerge
difftool.diffmerge.cmd=C:/Program\
Files/SourceGear/Common/DiffMerge/sgdm.exe "" ""
core.autocrlf=true
core.excludesfile=C:\Users\dev\Documents\gitignore_global.txt
user.name=DESKTOP-VAFJEG6\dev
user.email=madsum.isalm2@gmail.com`
如果我尝试git $ git difftool,它会显示以下对话框: -
有什么问题?如何正确配置?
答案 0 :(得分:0)
$LOCAL
/ $REMOTE
mentioned in the doc必须由shell解释(如果从git bash
而不是CMD会话输入)并由{{1}替换}。
直接编辑全局配置(""
)并添加缺少的元素以获取:
git config --global --edit