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


当前回答

Subclipse,因为至少它可以工作。

到目前为止,颠覆性一直是我的一大失败。它不能很好地处理我用Subclipse检查的所有旧项目。

其他回答

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

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

mvn eclipse:eclipse -Dwtpversion=2.0

它们都有非常令人发指的缺陷,但我无法让subversion与我从命令行签出的项目一起工作,这对我来说是一个表演的终结者。

FWIW,我们使用的是一个旧版本的SVN服务器(1.4左右),我似乎记得有一次Subclipse的更新打破了向后兼容性,要点是“没有人应该使用这么旧版本的SVN”。

颠覆是唯一一个似乎能够处理旧版本。但我不记得细节了,抱歉。

如果您使用TortoiseSVN并定期更新版本,您可能会发现Eclipse与subversion丢失了所有SVN信息并抛出一些可怕的错误。

原因是新版本的TortoiseSVN添加了新的元数据,Eclipse subversion无法理解这些元数据,除非您也使Eclipse SVN连接器保持最新状态。

我一般使用SVNKit连接器,所以TortoiseSVN 1.5。x将与Eclipse SVNKit连接器1.5兼容。x和TortoiseSVN 1.6。使用Eclipse SVNKit连接器1.6.x。

这两种我都用过,虽然Subclipse对我来说很不可靠,但subversion(至少在以前的版本中)在我的同事不小心输入了错误的凭据(网络登录用于访问subversion存储库)时锁定了他的帐户。

随着时间的推移,Subclipse往往变得杂乱无章。如果不定期刷新Eclipse, Subclipse似乎会丢失其文件跟踪信息。老实说,虽然,因为我有Easy Explorer插件,我使用subversion(偶尔)来记录历史和更改信息,但我很容易探索和使用TortoiseSVN来提交和更新我知道我最近更改的项目。