如何使用 git difftool 来区分合并冲突?
Posted
技术标签:
【中文标题】如何使用 git difftool 来区分合并冲突?【英文标题】:How to use git difftool to diff merge conflicts? 【发布时间】:2011-04-14 02:30:56 【问题描述】:在合并失败并出现一些冲突后,我可以用git diff
列出那些,
但是git difftool
不会使用配置中设置的 difftool 显示它们(在我的情况下是 Kaleidoscope),而是只会使用普通 diff。
git difftool
与之前的提交进行比较会起作用。
有没有办法在合并冲突中使用 git difftool?
问候杨
【问题讨论】:
我有过这种确切的经验,但使用融合而不是万花筒。git meldtool
有效,但 git difftool
恢复为 git diff
,即使它在没有要解决的合并冲突时正常工作。我觉得这很奇怪。
【参考方案1】:
试试git mergetool
。
【讨论】:
Mergetool 将启动视觉合并尝试,例如另一个应用程序,我只是想区分两个冲突文件,问题是虽然git difftool refA refB
正常工作,git diff
和 git diftool
将在这种情况下做同样的事情。【参考方案2】:
首先尝试:
git difftool -t <yourtool>
如果这不起作用,请查看man git-difftool
并查看支持的工具列表。检查其中一个是否符合您的要求,如果符合,则您已将其范围缩小到 git 不支持 Kaleidoscope,这可能需要进行一些其他配置调整。
【讨论】:
我已经配置了它并且git difftool refA refB
工作正常,我想做的是在合并失败时使用 difftool 确实显示冲突文件中的差异,git diff defaults
在这一点上工作但使用difftool 的作用与 diff 相同。它不会启动万花筒,但它也使用 diff。
在这种情况下,我会同意 3lectrologos。我通常用 git mergetool 来做这个。
从支持网站上看有点难,但我认为万花筒中还没有mergetool支持,只有difftool。以上是关于如何使用 git difftool 来区分合并冲突?的主要内容,如果未能解决你的问题,请参考以下文章