【问题标题】:Graphical DIFF programs for linux [closed]用于 linux 的图形 DIFF 程序 [关闭]
【发布时间】:2010-09-11 21:26:01
【问题描述】:

我真的很喜欢 Araxis Merge 用于 PC 的图形 DIFF 程序。不过,我不知道 linux 有什么可用的。我们在 z800 大型机上运行 SUSE linux。 如果我能得到一些其他人都喜欢的程序的指示,我将不胜感激。

【问题讨论】:

  • 没有人提到 tkdiff。惊喜!与融合相比,它的速度非常快。
  • 对不起。但这个问题很有建设性。虽然它可能被认为是题外话
  • 这里也很有帮助。而且我认为“由......专业知识支持......”
  • Linux 的视觉差异工具比这里提到的要多得多,而 Windows 工具通过 Wine 可以很好地工作。但是,all the Linux visual diff tools that I've tried are extremely slow at comparing large files - 大约 30 多秒,而 Windows 工具需要 1 秒。

标签: linux user-interface diff suse


【解决方案1】:

我知道两个图形差异程序:MeldKDiff3。我没有使用过 KDiff3,但 Meld 对我来说效果很好。

似乎两者都在 openSUSE 11.0 的标准软件包存储库中

【讨论】:

  • 我发现 Meld 也非常强大,尽管它在处理非常大的文件时往往会变得迟缓。
  • 我喜欢 Meld 的 SUBversion 集成。如果您打开当前文件夹,您会看到自上次签入以来已更改的文件列表。很实用。
  • Meld 的 +1 - 真的很漂亮。绝对是我用过的更具可读性的 GUI diff 应用程序之一。
  • 如果逐行播放,Meld 很好。但是,如果您对文件进行更多更改,meld 将无法正确找到更改。我认为 Meld 的 BeyondCompare 最好。
  • Meld 只是拒绝区分任何甚至只有一个字节的二进制数据。对我要区分的 PDF 文件没用。
【解决方案2】:

MeldKDiff 是最受欢迎的两个。

【讨论】:

    【解决方案3】:

    DiffMerge from SourceGear。这是相当不错。 Araxis Merge 是我错过的 Windows 程序之一。我想知道它是否可以在 Wine 下工作;)可能必须尝试一下

    【讨论】:

      【解决方案4】:

      BeyondCompare 也刚刚发布了 Linux 版本。

      不是免费的,但 Windows 版本物有所值 - 我假设 Linux 版本是一样的。

      【讨论】:

      • BeyondCompare 是很棒的 IMO,比我用过的所有集成版本控制差异工具和 ide 打包或操作系统标准差异工具都要好。 +1
      • 这是一款很棒的 Windows 应用,我从未在 Linux 上使用过。
      • BeyondCompare 在 Linux 上运行良好,IMO 优于 meld
      • 如果文件只有少量更改,Meld 很好,但似乎很容易混淆,所以我尝试了 BeyondCompare,对我来说,在这种情况下它没有更好,我更喜欢 Melds 界面。
      • 在 linux 上试过 BeyondCompare 并且有奇怪的行为。当它可以自行解决时显示冲突。还应用更改我很奇怪。下面板与上面板不同步
      【解决方案5】:

      如果您使用 SVN(颠覆)源代码控制,Eclipse 的 Subclipse 有一个出色的图形差异插件。

      【讨论】:

        【解决方案6】:

        我使用Guiffy,效果很好。

        (来源:guiffy.org

        【讨论】:

        • 我们曾经在工作中使用 Guiffy,直到我们发现它存在几个非常严重的问题。例如,在大文件上,它可能会合并文件的一部分,然后失败,留下部分合并的文件。它还有更有趣的问题,比如图形“>”字符成为合并的一部分。
        【解决方案7】:

        我通常需要从 subversion 存储库中区分代码,到目前为止 eclipse 对我来说工作得非常好......我将 KDiff3 用于其他工作。

        【讨论】:

        • 关于KDiff3的说明:比较文件效果很好,但是合并需要用大脑重写。合并后的文件通常不会在保存后保存,工作流程介于笨拙和完全毫无价值之间。为自己节省无数小时的挫败感和生产力损失,并使用其他任何东西。
        【解决方案8】:

        如果你使用 Vim,你可以使用内置的 diff 功能。 vim -d file1 file2 直接带您进入差异屏幕,您可以在其中进行各种合并和删除操作。

        【讨论】:

        • 使用编辑器来“区分”文件的主要优点是您可以手动编辑文件。此外,VIM 自动差异折叠让您只看到差异并仅在需要时展开隐藏的代码。
        • 我经常使用此功能,尽管使用 Meld 更容易合并,因为您通常只需单击一个箭头即可。
        • 我认为这是最好的答案。谢谢你,先生。 +1 使用 Vim 的解决方案。
        【解决方案9】:

        Kompare 适合 diff,但我使用 dirdiff。虽然它看起来很丑,但 dirdiff 可以进行 3 路合并 - 您可以在工具内完成所有操作(差异和合并)。

        【讨论】:

          【解决方案10】:

          我用过一次Meld,感觉很不错,以后可以多试试。 vimdiff 效果很好,如果你对 vim 很了解的话。最后我要提一下,我发现 xxdiff 在快速比较方面做得很合理。有很多 diff 程序做得很好。

          【讨论】:

            【解决方案11】:

            xxdiff 是轻量级的,如果这就是你所追求的。

            【讨论】:

            • xxdiff 还配备了进行代码审查的功能,并且从头开始构建以与脚本集成(例如,请参阅“决策模式”和随附的 Python 库)它,有许多自动调用的例子)。它是轻量级的,因为它是用 C 编写的,因此运行速度很快,并且不依赖于桌面环境(仅针对 Qt 编写)。
            【解决方案12】:

            Diffuse也很好。 它甚至可以让您轻松调整线条的匹配方式, 通过定义匹配点。

            【讨论】:

            • 能够手动调整匹配点是一个非常棒的功能!
            • 我刚刚尝试了扩散,它给出的比较结果比在将块移动到 if 语句 (+1) 的文件上的融合结果更合理。但是,您不能将漫反射指向 2 个目录,它只是文件 (-1)。
            • 据我所知,唯一允许合并/区分无限量文件的工具(除了vimdiff)。 net 是 kdiff3,最多 4 个文件。
            【解决方案13】:

            Emacs 自带Ediff

            这是 Ediff 的样子

            【讨论】:

            • ediff 厉害了,和emacs的集成很甜蜜
            • 很难设置一个人喜欢的方式,默认情况下它看起来像一棵圣诞树,并不明显。以及来自 Emacs 狂热者的评论。
            • 如果有人不喜欢默认的 ediff 设置。 ;; don't start another frame (setq ediff-window-setup-function 'ediff-setup-windows-plain) ;; put windows side by side (setq ediff-split-window-function (quote split-window-horizontally))source
            猜你喜欢
            • 2018-09-27
            • 2012-09-09
            • 2010-10-13
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2010-09-12
            相关资源
            最近更新 更多