Eclipse中的SVN分为两个阵营。SVN的人开发了一个名为Subclipse的插件。Eclipse开发人员有一个名为subversion的插件。广义上讲,他们做的事情是一样的。它们各自的优点和缺点是什么?
当前回答
作为布兰登回答的补充:
我们从1.5.1版本开始使用Subversion,并首先使用Subclipse。但是因为我们很大程度上依赖于合并功能,我们切换到subversion,它更方便,并且在合并对话框中有一个单独的reintegration选项。
一个可能阻碍合并的错误是,如果您显式地选择修订,它不会接受列出的最后一个修订。如。“101-100”不合并r100和“100”,因此根本不合并任何东西。(0.7.5版)
并且它使用了与CVS插件相同的指示器。
其他回答
如果你正在使用Zend Studio 9 (Zend的Eclipse实现),我建议使用Subclipse而不是Zend Studio自带的subversion作为默认值。
我已经在Zend论坛上发布了一个关于subversion和Zend Studio 9的问题以及我使用Subclipse的解决方案。
如果您使用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。
对我来说,两者都不好也不坏,但是subversion是Eclipse Ganymede平台中的默认SVN插件,所以它有可能与Eclipse更好地集成。
subversion比Subclipse有更多的优点,如下所示。但是Subversion没有的一个特性是使用分支的关键。所以我们必须使用Subclipse。
颠覆性的优点:
视图和图标的信息量更大 刷新提交同步项后,关闭提交文件。
Subclipse优势
能够比较两个分支
当然,这两个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在启动时挂起?
- Java编译器级别与安装的Java项目facet的版本不匹配
- 升级到Ubuntu 13.10后,Eclipse菜单不会显示
- 提交指定文件
- 我怎么能得到'查找'忽略。svn目录?
- 如何使用Eclipse比较两个文件?Eclipse是否提供了任何选项?
- 升级到ADT 22后,库不再被添加到APK
- 由于“之前的操作尚未完成”,Subversion被卡住?
- 应用程序无法打开,因为它来自一个身份不明的开发者
- Subversion中的主干、分支和标签是什么?
- 在XML中“图像上缺少contentDescription属性”
- 哪些Eclipse文件属于版本控制?
- 命令行svn for Windows?
- 如何在Eclipse Classic中安装Eclipse市场?
- 为什么logcat没有显示任何东西在我的Android?