Eclipse中的SVN分为两个阵营。SVN的人开发了一个名为Subclipse的插件。Eclipse开发人员有一个名为subversion的插件。广义上讲,他们做的事情是一样的。它们各自的优点和缺点是什么?
当前回答
我升级到Ganymede后就一直在用subversion。我在Linux (Ubuntu和Fedora Core)、Windows XP和Mac OS X.5中的Eclipse中使用它。除了让Subversion 1.5.1在Mac OS下使用正确的安全库有一些问题外,我没有遇到任何问题。鉴于它已经被采纳为一个Eclipse技术项目,我倾向于把赌注押在它身上,就长期希望而言。
其他回答
对我来说,两者都不好也不坏,但是subversion是Eclipse Ganymede平台中的默认SVN插件,所以它有可能与Eclipse更好地集成。
我也遇到了和其他人一样的问题,所以我不能说它是否比Subclipse更好。
当涉及到与Eclipse的标签和分支的集成时,Subclipse确实很缺乏。你可以这样做,但它远不如CVS那样无缝。
当然,这两个IDE插件都有它们的问题。但两者都不排除并行使用其他解决方案,如TortoiseSVN或命令行。我在工作中使用这三种方法。
需要记住的重要一点是,所有客户端SVN软件都应该使用相同的SVN文件格式(不同版本的SVN不同),否则就会自找麻烦。
我们发现的另一个问题是当客户端软件使用与服务器不同的SVN文件格式时。(所谓文件格式,我指的是所有信息在所有那些看似不可见的. SVN文件中表示的方式,这些文件有效地记录了SVN需要知道的关于您的项目文件的信息。)这会造成严重破坏。在1.5服务器和1.6客户端之间有一个有记录的错误,但我现在找不到链接。
由于与我们的SVN 1.5.5服务器不兼容,我们在运行高级(IMO) Subclipse 1.6插件时遇到了问题。所以我们回到了《颠覆者》。它工作得很好,尽管速度较慢并且有些bug(但正在改进)。不过,当我们的服务器更新时,我们将切换到Subclipse。是的,我们用TortoiseSVN检查我们的项目,并将它们导入Eclipse(这样更快)。
我们发现,正如其他帖子所说,如果我们运行更新版本的TortoiseSVN,在1.6中编写文件,它将不起作用。x格式,但当我们恢复到TortoiseSVN 1.5。X,它工作得很好。命令行客户端也是如此(我们在Ant任务中利用了它)。
如果您在自己的公司中使用其中的一种,甚至希望将它们捆绑到自己的基于Eclipse的产品中,那么使用Subclipse会更方便,因为它是在业务友好的Eclipse公共许可证下可用的。
另一方面,颠覆性需要所谓的连接器才能充分发挥作用。这些公司拥有不同的执照。因此,您可能会为subversion功能获得两到三个不同的许可证,而所有其他Eclipse插件都在一个EPL之下。这也是为什么这些连接器没有托管在eclipse.org上的原因。
这就是在subversion安装之后动态下载它们的原因(这也意味着仅仅镜像eclipse.org更新站点并不能在公司网络中提供可用的subversion离线安装)。
虽然我都是使用Helios工作的,但我对Subclipse有一点偏爱,因为它对bugtraq属性的出色支持(详细信息请参阅这里)。
历史视图显示了一个单独的列(标题为bugtraq:label,显示bugid),上下文菜单有一个专门的动作“打开Bug URL”(链接到bugtraq: URL)——我不知道如何使用subversion访问这些信息。
推荐文章
- Android Eclipse -无法找到*.apk
- 通过SSH使用Eclipse完成远程项目
- javac和Eclipse编译器之间的区别是什么?
- 如何删除SVN工作目录中的所有更改?
- 提交前将文件“unadd”到SVN
- 如何在清洁模式下运行eclipse ?如果我们这样做会发生什么?
- 如何在Eclipse中更改动态web项目的上下文根?
- Eclipse错误:间接引用所需的.class文件?
- 如何在Eclipse中只使用键盘去一个错误?
- 如何在Eclipse中生成Javadoc注释?
- 如何在EPF Composer 1.5中删除一个规程?
- Eclipse调试器总是阻塞在ThreadPoolExecutor上,没有任何明显的异常,为什么?
- 如何查看最近的SVN日志条目?
- 如何丢弃SVN签出中的本地更改?
- 是什么原因导致Eclipse中导入的Maven项目默认使用Java 1.5而不是Java 1.6,我如何确保它不使用?