Eclipse中的SVN分为两个阵营。SVN的人开发了一个名为Subclipse的插件。Eclipse开发人员有一个名为subversion的插件。广义上讲,他们做的事情是一样的。它们各自的优点和缺点是什么?


当前回答

如果你正在使用Zend Studio 9 (Zend的Eclipse实现),我建议使用Subclipse而不是Zend Studio自带的subversion作为默认值。

我已经在Zend论坛上发布了一个关于subversion和Zend Studio 9的问题以及我使用Subclipse的解决方案。

其他回答

我升级到Ganymede后就一直在用subversion。我在Linux (Ubuntu和Fedora Core)、Windows XP和Mac OS X.5中的Eclipse中使用它。除了让Subversion 1.5.1在Mac OS下使用正确的安全库有一些问题外,我没有遇到任何问题。鉴于它已经被采纳为一个Eclipse技术项目,我倾向于把赌注押在它身上,就长期希望而言。

我也遇到了和其他人一样的问题,所以我不能说它是否比Subclipse更好。

当涉及到与Eclipse的标签和分支的集成时,Subclipse确实很缺乏。你可以这样做,但它远不如CVS那样无缝。

如果您在自己的公司中使用其中的一种,甚至希望将它们捆绑到自己的基于Eclipse的产品中,那么使用Subclipse会更方便,因为它是在业务友好的Eclipse公共许可证下可用的。

另一方面,颠覆性需要所谓的连接器才能充分发挥作用。这些公司拥有不同的执照。因此,您可能会为subversion功能获得两到三个不同的许可证,而所有其他Eclipse插件都在一个EPL之下。这也是为什么这些连接器没有托管在eclipse.org上的原因。

这就是在subversion安装之后动态下载它们的原因(这也意味着仅仅镜像eclipse.org更新站点并不能在公司网络中提供可用的subversion离线安装)。

虽然我都是使用Helios工作的,但我对Subclipse有一点偏爱,因为它对bugtraq属性的出色支持(详细信息请参阅这里)。

历史视图显示了一个单独的列(标题为bugtraq:label,显示bugid),上下文菜单有一个专门的动作“打开Bug URL”(链接到bugtraq: URL)——我不知道如何使用subversion访问这些信息。

两者都非常相似,但是subversion是“eclipse svn提供者”。我主要使用subversion是因为它有几个方便的特性:

历史分组

当我浏览一个分支的历史记录,而不仅仅是看到每个提交的一堆行时,它可以根据今天、星期等对提交进行分组。

中继、分支和标签的映射

subversion假定默认的svn布局:trunk、分支、标签(您可以更改),因此每当您想要标记或分支时,只需单击一下,并提供标记或分支的名称。

就像我说的,这些都是我觉得方便的小区别。这两个扩展都可以很好地与mylyn一起工作,但总的来说,这两个扩展确实没有太多区别。

与subversion合并是一种痛苦(还没有尝试Subclipse),我从来没有成功合并过。合并的预览是伟大的,但它永远不会完成合并,或者它将花费很长时间。大多数时候,我通过命令行完成合并,没有任何问题。