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


当前回答

如果你经常使用Subversion进行合并,那么你可能会更喜欢CollabNet桌面版- Eclipse版。你必须在CollabNet注册一个账户才能下载,但它是免费的。它本质上是Subclipse,具有更好的合并UI。

我没有加入CollabNet。

CollabNet已经将改进后的合并客户端提供给Subclipse的非注册用户。当从更新站点安装Subclipse时,您可以通过选择CollabNet Merge Client特性来获得它。

其他回答

我会说Subclipse,因为我甚至无法获得颠覆性的工作;)

两者我都用过。我有一个问题,我的工作空间里有大约150个项目,当我选择所有的插件并选择“同步存储库”时,subversion会花很长时间。UI会冻结很长一段时间。我发现Subclipse更稳定。

总之,我经常结合使用这些工具。对于一些任务,比如检查整个分支,我更喜欢命令行。对于其他人,我使用TortoiseSVN。我使用Subclipse主要是为了查看历史记录并直接在工具上运行比较,偶尔也会进行比较(不过我更喜欢Beyond compare)。

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

历史分组

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

中继、分支和标签的映射

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

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

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

我还没有真正使用过它,但它似乎支持“检出As”,就像内置CVS支持一样。

比如,从SVN中获取一个项目,并能够将其作为一个web项目运行,人们可能能够一气呵成。但是为了在Subclipse中得到相同的结果,我只需要检查源代码并运行:

mvn eclipse:eclipse -Dwtpversion=2.0

这两款我都试过了,Subclipse和Subversive都很糟糕。两者的安装都具有挑战性。如果使用subversion,则不能使用SVN外部客户端。

但是,您需要在Eclipse中安装一个SVN客户端,以跟踪更改,并且避免损坏本地存储库。

我已经安装了Subclipse,但使用TortoiseSVN实际做提交/标记/分支/合并。