什么是最好的工具,用于观察和编辑合并在Git?我想得到一个3分向合并来看,与"地雷","他们的"和"祖先的"在单独的板,而第四个"输出"小组。

此外,说明援用上述工具将是巨大的。(我还是没有弄清如何开始kdiff3在这样一种方式,它不给我错误。)

我的操作系统是Ubuntu。

有帮助吗?

解决方案

是diff/合并工具。

这是如何给它安装:

其他提示

您可以将自己的合并工具配置为与“ git mergetool ”一起使用。

示例:

  git config --global merge.tool p4merge
  git config --global mergetool.p4merge.cmd p4merge '$BASE $LOCAL $REMOTE $MERGED'
  git config --global mergetool.p4merge.trustExitCode false

当你在这里时,你也可以将它设置为“ git difftool ”的difftool:

  git config --global diff.tool p4merge
  git config --global difftool.p4merge.cmd p4merge '$LOCAL $REMOTE'

请注意,在Unix / Linux中,您不希望shell解析为 $ BASE 作为变量 - 它实际上应该出现在〜/ .gitconfig文件中以使其工作。

超越比较3 ,我的最爱,有专业版中的href =“http://www.scootersoftware.com/moreinfo.php?zz=moreinfo_merge”rel =“noreferrer”>合并功能。合并的好处是它可以让你看到所有4个视图:base,left,right和merged result。它比 P4V 更不直观,但比WinDiff更多。它与许多源代码管理集成并适用于Windows / Linux。它有许多功能,如高级规则,版本,手动对齐......

Perforce Visual Client P4V 是一个免费工具,它提供了一个最明确的合并界面(参见一些截图)。适用于所有主要平台。我对该工具的主要失望是它的“只读”类型。接口。您无法手动编辑文件,也无法手动对齐。

PS:P4Merge包含在P4V中。 Perforce试图让没有客户的工具变得有点困难。

SourceGear Diff / Merge 可能是我的第二个免费工具选择。检查合并屏幕截图,你会发现它有3个至少观点。


Meld 是一款较新的免费工具,我更喜欢 SourceGear差异/合并:现在它也适用于大多数平台(Windows / Linux / Mac),具有本机支持某些源控件(如 Git )的独特优势。因此,您可以在所有文件上使用更简单的历史差异。合并视图(请参阅屏幕截图)只有3个窗格,就像 SourceGear Diff一样/合并。这使得在复杂情况下合并更加困难。

PS:如果有一天工具支持 5个视图合并,这真的很棒,因为如果你在Git中挑选提交你真的没有一个基础而是两个。两个基础,两个更改,一个合并。

我最喜欢的视合并工具 SourceGear DiffMerge

  • 它是免费的。
  • 跨平台(Windows,OS X和Linux)。
  • 干净的视觉UI
  • 所有差异功能,你会期望(差异、合并文件夹Diff)。
  • 命令行接口。
  • 使用快捷键。

User interface

我听到有关kdiff3的好消息。

<强> vimdiff同时

一旦你学会了vim(和你应该的恕我直言),vimdiff只是一个更美丽的小正交概念。要获得vim的在线帮助:

:help vimdiff 

这个问题涵盖了如何使用它:我该怎么做使用vimdiff解决冲突?

如果你在鼠标使用的黑暗时代陷入困境,并且你合并的文件不是很大,我推荐meld。

你可以试试 P4Merge.

想象之间的差异,文件的版本与P4Merge.解决冲突导致的平行或并发的发展通过彩色编码。

特征包括:

  • 突出显示和编辑文本文件的差异
  • 选择包括或忽略行的结局或空白
  • 认识到行结束项公约适用于Windows(CRLF)、Mac(CR)和Unix(LF)
  • 使用命令行参数,并启动从非必然的应用程序
  • 显示的行数字比较和合并的文件
  • 排除的文件修改的、独特的,或者不变
  • 过滤文件的名称或扩展
  • 组织修改资产在熟悉的文件的文件夹层结构
  • 比较JPEG,GIF,TIFF,BMP和其他文件的格式
  • 延长使用的脱API
  • 复盖图像或显示side-by-side
  • 突出的差异在复盖图像

IntelliJ IDEA 有一个复杂的合并冲突使用Resolve魔棒的分辨率工具,极大地简化了合并:

漫反射是我的最爱,但我当然有偏见。 :-)它很容易使用:

$ diffuse "mine" "output" "theirs"
  

Diffuse是一个用Python编写的小而简单的文本合并工具。使用漫反射,您可以轻松地合并,编辑和查看代码更改。 Diffuse是免费软件。

Araxis Merge http://www.araxis.com/merge 我在Mac OS X上使用它,但我在Windows上使用它...它不是免费的......但它有一些不错的功能 ......虽然在Windows上更好。

如果您只是想要一个超越比较的差异工具,那就非常好了: http:// www。 scootersoftware.com/moreinfo.php

您可以通过传递 git mergetool -t =&lt; tool&gt; - tool =&lt; tool&gt; 来更改git mergetool使用的工具。要更改默认值(来自vimdiff),请使用 git config merge.tool&lt; tool&gt;

所以长合并,你可以尝试:

  • DiffMerge 直观地比较和合并文件,在Windows,OS X和Linux。

    DiffMerge

  • , 是一些比较和合并工具。

    Meld is a visual diff and merge tool

  • KDiff3, 一比较和合并的程序),其中比较或合并2或3中的案文输入files/dirs.
  • opendiff (第一部分的工具mac os)、命令行程序启动FileMerge应用程序的从终端到以图形比较文件或目录,包括 合并.

我已经尝试了很多的工具在这里提到的与他们有相当一直什么我要找的。

就个人而言,我已经找到了 原子 是一个伟大的工具,用于显示的差异和冲突的决议/合并。

作为对合并,没有三种意见,但它的所有组合成一个用彩色的突出显示每个版本。你可以编辑码直接或有按钮使用哪个版本的这一段,你想要的。

我甚至不使用它作为一个编辑或IDE了,只是为了工作,与饭桶。干净的用户界面和非常直接,加上它是高度定制的。

  • 你可以开始从命令行,并通过在一个单一的文件你想要的 开放,或增加项目文件夹(混帐回购协议).

    • 我还将建议 项目经理 作为一个非常方便的方式 导航的项目之间没有填补了你的树图。
  • 唯一的问题我已经爽快-当工作的大原子储存库可以更新缓慢做的更改以外的。我只是一直关闭,当我完成之后,然后重新打开的时候我想看我的变化/提交一次。你还可以刷新的窗口ctrl+shift+f5,这只需一秒钟。

它是免费的,当然。

您可以在Linux,Mac或Windows上安装 ECMerge差异/合并工具。它是在Git中预先配置的,所以只需使用 git mergetool 即可完成任务。

我使用不同的工具进行合并和比较:

git config --global diff.tool diffuse
git config --global merge.tool kdiff3

拳头可以通过以下方式调用:

git difftool [BRANCH] -- [FILE or DIR]

使用 git mergetool 时会调用第二个。

如果你使用 visual studio ,Team Explorer内置工具是解决git合并冲突的一个非常好的工具。

gitx http://gitx.frim.nl/

使用大型提交集时会出现一些错误,但非常适合浏览更改并选择不同的更改到舞台然后提交。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top