用于Linux的Visual SVN diff和比较工具

时间:2009-07-17 06:32:13

标签: linux svn git diff

这是适用于Linux的最佳Visual SVN Diff显示器。

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

我知道命令行差异工作;但我希望突出显示多列语法和差异。

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

11 个答案:

答案 0 :(得分:42)

我一直在使用meld来实现此目的,在Ubuntu中你可以这样做:

apt-get install meld

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

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

  • file.mine - 与svn update之前的本地更改的文件。
  • file.r< N> - 您在其上创建本地更改的修订版。
  • file.r< N + M> - 您从svn更新到的修订版,通常是HEAD。
  • file - Subversions尝试将您的更改合并到更新的文件中。

因此,要使用meld合并您的更改,您可以执行以下操作:

meld file.mine file.<n+m>

将您的更改合并到从svn更新的版本中,或者相反。通常情况下,将文件与对文件的最少更改进行合并通常更容易。

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

svn resolved file

答案 1 :(得分:8)

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

答案 2 :(得分:7)

Beyond Compare也支持Linux。如果你已经喜欢BC for Windows,我会说有一个胜利者。

答案 3 :(得分:6)

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

例如,

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

答案 4 :(得分:2)

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

答案 5 :(得分:1)

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

答案 6 :(得分:1)

kdiff怎么样(特别是如果你使用KDE) 或者,如果您有IDE(如Eclipse / netbeans),它是否不提供与SVN相关的功能?

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

答案 7 :(得分:1)

我使用Vim's diff mode。使用vcscommand plugin,您只需键入:VCSDiff即可在当前文件中输入diff-mode与其历史记录。

答案 8 :(得分:1)

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

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

由于

答案 9 :(得分:1)

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

答案 10 :(得分:0)

还有ECMerge,它内置支持HG,Git,Bazaar浏览(只要他们的respeticve命令行工具在那里),以及语法高亮等等: http://www.elliecomputing.com/ 它在Linux,MacOS X,Solaris和Windows上的工作方式相同。