【问题标题】:Visual SVN diff and compare tools for Linux适用于 Linux 的 Visual SVN 差异和比较工具
【发布时间】:2010-11-11 14:50:06
【问题描述】:

哪个是 Linux 上最好的 Visual SVN Diff 显示器。

BeyondCompare 和 VisualSVN 1.5 在 Windows 上运行良好。 Linux 的等效工具有哪些? (特别是 Ubuntu)。

我知道命令行 diff 有效;但我想突出显示多列语法和差异。

如果该工具也支持 Git 和 Hg,那就更好了。

【问题讨论】:

标签: linux svn git diff


【解决方案1】:

几个月以来,我一直在使用“subcommander”包中的 submerge。我已经描述了它here

【讨论】:

    【解决方案2】:

    为此我一直在使用meld,在 Ubuntu 中你可以这样做:

    apt-get install meld
    

    我认为它只进行双向比较,但通常这只是你需要的,而且只是差异显示给你的。

    当您使用 SVN 遇到冲突并且必须进行合并时,您通常会得到 4 个文件 AFAIR。

    • file.mine - 与 svn update 之前一样的本地更改文件。
    • file.r - 您创建本地更改的修订版。
    • file.r - 你从 svn 更新到的版本,通常是 HEAD。
    • file - Subversion 尝试将您的更改合并到更新的文件中。

    所以要使用 meld 来合并你的更改,你会这样做:

    meld file.mine file.<n+m>
    

    然后将您的更改合并到从 svn 更新的修订版中,或者相反。将更改最少的文件合并到更改最多的文件通常更容易。

    最后你会用合并的文件覆盖文件并执行:

    svn resolved file
    

    【讨论】:

    • 我相信meld现在已经支持3路合并了。
    【解决方案3】:

    还有ECMerge,它内置了对HG、Git、Bazaar浏览的支持(只要有它们各自的命令行工具),还有语法高亮等等: http://www.elliecomputing.com/ 它在 Linux、MacOS X、Solaris 和 Windows 上运行相同。

    【讨论】:

      【解决方案4】:

      您可能想试试 xd http://github.com/jiqingtang/xd,它是 GIT/SVN 差异的 GUI 包装器。它本身不是差异工具。当你想运行“git diff”或“svn diff”时运行“xd”,它会显示文件列表、预览窗口,你可以启动任何你喜欢的 diff 工具,包括 tkdiff、xxdiff、gvimdiff、emacs (ediff)、xemacs(ediff)、meld、diffuse、kompare 和 kdiff3。您还可以运行任何自定义工具。

      【讨论】:

      • 您好,如果您要宣传自己的软件,请在回答的文本中明确说明
      【解决方案5】:

      嗯.. 有人尝试过 DiffMerge 吗?如果没有,那么我建议所有人都这样做。如果您使用过 Windows 版 WinMerge,那么您会发现它是 Ubuntu / Linux 版 WinMerge 的绝佳替代品。

      请尝试以下网站了解详情: http://www.webtechquery.com/index.php/2010/05/free-diff-tools-ubuntu-linux-windows/

      谢谢

      【讨论】:

        【解决方案6】:

        我为此使用Vim's diff mode。使用vcscommand plugin,您只需键入:VCSDiff 即可进入当前文件与历史记录的差异模式。

        【讨论】:

          【解决方案7】:

          Beyond Compare 也支持 Linux。如果您已经喜欢 BC for Windows,我会说是赢家。

          【讨论】:

          • 最近通过工作被介绍给Beyond Compare,我必须说这是一个明显的赢家。非常有用的工具。
          【解决方案8】:

          Diffuse 支持 Subversion、Mercurial、Git 和其他几个版本控制系统。它也适用于 Windows。对于 Ubuntu,只需使用“$ sudo dpkg -idiffuse-*.deb”安装 .deb 包,然后运行“diffuse -m”即可查看您的更改或修复合并冲突。

          【讨论】:

          • Sourceforge 回购页面显示“0”下载量
          • “0 次下载”是 SourceForge 统计服务器的故障。
          【解决方案9】:

          注意:如果您的 diff 工具有 CLI(命令行界面),它可以很容易地与 Git 集成,用于 diff 和合并(如果它支持 3-way merges)。
          从 Git1.6.3 开始,difftool - mergetool 选项允许您集成该差异程序(请参阅“How do I view 'git diff' output with visual diff program?”)。

          例如KDiff3 是一个很好的候选者,因为它甚至是auto-detected by Git

          【讨论】:

            【解决方案10】:

            KDiff3 非常好(我也在 Windows 上使用它)。它适用于比较和合并。

            【讨论】:

              【解决方案11】:

              kdiff 怎么样(尤其是如果您使用 KDE) 或者,如果你有一个IDE(比如Eclipse/netbeans),它不提供SVN相关的功能吗?

              (我个人使用 Eclipse PDT for PHP ;它是 SVN 的 Subversive 插件)

              【讨论】:

                【解决方案12】:

                我在 Linux 上使用过很多 SlickEdit。它有一个非常好的集成差异查看器/编辑器。它适用于 SVN、CVS 和其他几个版本控制存储库。

                【讨论】:

                  猜你喜欢
                  • 1970-01-01
                  • 2012-07-03
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 2020-03-08
                  • 1970-01-01
                  • 2019-02-07
                  相关资源
                  最近更新 更多