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


当前回答

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

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

其他回答

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

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

mvn eclipse:eclipse -Dwtpversion=2.0

我选择使用Subclipse,因为它与Subversion项目联系最紧密,因此更有可能更好地处理SVN的核心功能。如果它不能执行任何功能,那么我有TortoiseSVN作为备份。

如果您使用svn+ssh作为访问存储库的协议,我强烈建议您选择Subclipse: subversion不够智能,不能正确地记住您的凭据,并且每次更新工作副本时都会提示您输入用户名和私钥,对于您可能已经设置的每个svn-external也是如此。

在这种情况下,“记住凭据”选项被打破了,并且自subversion的第一个公开发布以来一直如此。

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

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

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

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