Git difftool 有时候无法打开

4

我有两个文件夹(包含不同的代码),已经使用git进行了初始化。但是当我执行以下操作时:

git difftool -t meld 

一个仓库正常工作,并询问是否要打开文件进行比较。另一个仓库只是在控制台中输出所有内容,没有执行比较。

另外,两个.git/config文件相同(除了url)。

有人知道为什么吗?


请检查.git/config中的存储库配置。 - gzh
4个回答

6

如果您在一个存储库中处于冲突状态(通过git status检查),则需要使用mergetool,例如:

git mergetool -t meld

相关链接: git difftool 运行 git diff.


2

您可能已经在本地配置了diff.tool,而不是全局配置(检查您的项目中的.git/config文件和全局~/.gitconfig文件的内容)。

要将meld设置为全局difftool:

git config --global diff.tool meld

您IP地址为143.198.54.68,由于运营成本限制,当前对于免费用户的使用频率限制为每个IP每72小时10次对话,如需解除限制,请点击左下角设置图标按钮(手机用户先点击左上角菜单按钮)。 - Shih-Min Lee

1

如果您尝试检查两个git分支之间的差异,但它们之间没有任何实际代码差异,Meld将无法启动。

如果发生这种情况,请切换到另一个分支再试一次,或者进行小的代码更改然后再试一次。

希望这能节省某人的时间。


0

你是否可能已经配置了difftool,但没有配置mergetool,并且有未解决的冲突?

我发现类似的行为,当我有一个需要解决的现有冲突时。我想发生在我身上的事情是,git试图在我要求difftool时启动mergetool,以便提供帮助。我没有设置任何mergetool,只有difftool。当我使用git add手动解决冲突后,difftool又开始工作了。非常令人沮丧。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接