外部git difftool在Windows上不起作用 [英] External git difftool is not working on windows

查看:369
本文介绍了外部git difftool在Windows上不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我为许多人在git中苦苦挣扎,并且已经阅读了几乎所有以"git","diff"等标记的主题,并尝试了数百种不同的解决方案,但都没有成功.我正在尝试将sum外部difftool(Meld,p4merge)设置为我的git工具,但是git完全忽略了此选项. 这是我的git config -global .

I'm struggling with git for many ours and have read almost all topics taged by "git", "diff" etc. and tried hundred of different solutions, but did not succeeded at all. I'm trying to set sum external difftool (Meld, p4merge) as my git tool, BUT git ignoring this option at all. Here is my git config --global.

[alias]
    st = status
    co = checkout
    ci = commit
[diff]
    tool = p4merge
[difftool "p4merge"]
    cmd = p4merge.exe $LOCAL $REMOTE
[difftool]
    prompt = false
[merge]
    tool = p4merge
[mergetool "p4merge"]
    cmd = p4merge.exe $BASE $LOCAL $REMOTE $MERGED
[mergetool]
    prompt = false
    trustExitCode = false
    keepBackup = false

Mergetool命令运行正常,但是difftool会被忽略,并且git始终会内置diff.我在做什么错了?

Mergetool command is working perfectly, but difftool is ignored and git starts always build-in diff. What i'm doing wrong?

推荐答案

您很可能处于合并模式(例如.git/MERGE_MODE文件存在或由git status检查),则您无法使用difftool,因为参数是不同的,因此您必须使用mergetool.

Most likely you're in merge mode (e.g. .git/MERGE_MODE file exists or check by git status), then you cannot use difftool, because the arguments are different, so you've to use mergetool.

如果您想中止合并,请运行:git merge --abort,则difftool应该可以.

If you'd like to abort the merge, run: git merge --abort, then difftool should work.

另请参见: git difftool运行git diff .

这篇关于外部git difftool在Windows上不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆