这是适用于Linux的最佳Visual SVN Diff显示器。
BeyondCompare和VisualSVN 1.5在Windows上运行良好。什么是Linux的等效工具? (特别是Ubuntu)。
我知道命令行差异工作;但我希望突出显示多列语法和差异。
如果该工具也支持Git和Hg,那就更好了。
答案 0 :(得分:42)
我一直在使用meld来实现此目的,在Ubuntu中你可以这样做:
apt-get install meld
我认为它只进行双向比较,但通常这只是你需要的东西,而且只是差异显示你的东西。
当您使用SVN发生冲突并且必须进行合并时,通常会获得4个文件AFAIR。
因此,要使用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上的工作方式相同。