首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在git上进行3-way视觉比较?

如何在git上进行3-way视觉比较?
EN

Stack Overflow用户
提问于 2014-10-10 22:03:43
回答 2查看 1K关注 0票数 2

我想对存在于两个不同分支中的单个文件进行3-way diff,即每个分支中的最后一次提交,并考虑公共祖先。我想使用一个外部工具,允许做3个方向的比较。我正在考虑使用git difftool,但据我所知,它只允许比较给定文件的任何2个版本。我可以使用mergetool,但这会迫使我首先运行git merge,以便设置BASE、REMOTE和LOCAL变量。我不想运行git merge。考虑到文件的共同祖先,我只想先做一个3-way diff,看看在两个分支中对文件所做的更改。

有没有我需要的选项,使用difftool或mergetool?谢谢

EN

回答 2

Stack Overflow用户

发布于 2017-05-22 19:33:22

一种解决方案是可视化diffuse,它可以直接操作git版本,并支持n-way视图。

例如,您可以在文件的不同分支之间打开三向比较:

diffuse -r master -r HEAD -r upstream file.txt

票数 3
EN

Stack Overflow用户

发布于 2022-02-06 10:23:20

安装你喜欢的3-way diff工具,我更喜欢的是KDiff3

打开以编辑GIT全局配置:git edit --global --edit

在您选择的工具中进行调整:

代码语言:javascript
复制
[diff]  
    tool = kdiff3
[difftool]
    prompt = true
[difftool "kdiff3"]
    cmd = 'C:/Program Files/KDiff3/kdiff3.exe' \"$LOCAL\" \"$REMOTE\"
    keepBackup = false
[merge]
    tool = kdiff3   
[mergetool]
    prompt = true
[mergetool "kdiff3"]
    cmd = 'C:/Program Files/KDiff3/kdiff3.exe' \"$BASE\" \"$LOCAL\" \"$REMOTE\" -o \"$MERGED\"
    trustExitCode = true
    keepBackup = true   

要在VS代码中使用右键单击命令打开它,我添加了这个简单的插件:GIT diff merge tool

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26301307

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档