首页 文章

Eclipse,Subclipse和Subversive的SVN插件的优缺点是什么? [关闭]

提问于
浏览
630

Eclipse中的SVN分为两个阵营 . SVN人员开发了一个名为Subclipse的插件 . Eclipse人员有一个名为Subversive的插件 . 从广义上讲,他们都做同样的事情 . 各有哪些优缺点?

30 回答

  • 6

    我还没有真正使用它,但似乎Subversive支持“Check Out As”,就像内置的CVS支持一样 .

    比如,要从SVN获取项目并能够将其作为Web项目运行,可以一次性完成 . 但是要在Subclipse中获得相同的结果,我只需查看源代码并运行:

    mvn eclipse:eclipse -Dwtpversion=2.0
    
  • 50

    两者都非常相似,但Subversive是“eclipse svn提供者” . 我主要使用Subversive,因为有一些方便的功能:

    Grouping of history

    当我浏览分支的历史而不是仅为每次提交看到一堆行时,它可以按今天,星期等对提交进行分组 .

    Mapping of trunk, branches, and tags

    Subversive假定默认的svn布局:trunk,branches,tags(你可以更改),所以无论何时你想要标记或分支,只需点击一下,你就可以提供标签或分支的名称 .

    就像我说的那些是我觉得方便的细微差别 . 两者都适用于mylyn,但总体而言,这两个扩展并没有太多差异 .

    与Subversive合并是一个痛苦(没有尝试过Subclipse),我从来没有能够成功合并 . 合并的预览很好,但它永远不会完成合并,或者它将采取长期 . 大多数时候,我通过命令行完成合并而没有任何问题 .

  • 6

    我会采取行动解决这个问题 . 我是Subclipse的项目主管,我管理项目的所有版本等 . 所以我的偏见很明显 .

    我不打算谈论Subversive . 显然,有些用户使用它并喜欢它 . 功能上的产品非常相似,因为它们都是成熟产品 .

    我想要评论的一件事就是这个概念,以某种方式Subversive是“官方Eclipse”插件 . 这是不正确的,因为没有这样的指定 . Eclipse是一个开源基础,任何想要遵循其规则,流程和IP要求等的项目都可以在基础上托管他们的项目 . 这并不会使你比任何其他插件更多或更少的官方 .

    我还要注意到Subversive自成立以来一直处于“孵化”阶段,在我看来它不会满足毕业要求 . 正如您在此处所看到的,项目中只有一个提交者,并且提交活动已经减少到非常低的水平 .

    Subversive - SVN Team Provider

    那你为什么要使用Subclipse?我们积极参与Subversion本身 . 我是Subversion PMC成员并帮助维护Java语言绑定,以便我们(以及像Subversive这样的其他项目)可以使用API .

    我们直接使用Subversion来定义和改进API,并确保将必要的功能暴露给像Subclipse这样的客户端 . 我们还与Visual Studio集成(AnkhSVN)和TortoiseSVN团队密切合作,确保客户之间的用户体验相对一致 .

    Subclipse仍在积极维护,我们维护对Eclipse版本3.2到4.2的支持 . 我们一直在努力倾听反馈并融入社区的想法 . 最近的1.8.x版本包括内部更改,这些更改可以在处理大型项目时(即您真正看到它时)大大提高Eclipse的性能 .

    Subclipse在合并跟踪支持等领域处于领先地位,我们与Subversion团队密切合作,首先在1.5中添加此功能,然后在后续版本中进行演变 . 我们经常是新API的最初消费者,并为项目提供了强化功能所需的反馈 . 几年前,我们还引入了图形修订图功能,成为第一个将这个长期要求的功能带给Eclipse用户的人 .

    如果Subversive中有特定的UI功能,人们希望在Subclipse中看到,我鼓励您访问我们的社区并参与我们的论坛 . 也许其他用户可以分享您的观点,我们可以一起改进用户界面 .

    论坛[Subclipse-users] .

    Eclipse 4.2是本文发布时的最新版本,但可以安全地假设Subclipse将支持所有未来的Eclipse版本 .

  • 160

    对于每个新版本的Eclipse,我都安装了Subversive,因为它是Eclipse提供的标准 . 每一次,它都有识别我已有的项目的问题 .

    所以我最终卸载Subversive并安装Subclipse,这非常有效 . 我也经常使用命令中的SVN和Eclipse一样,Subclipse没有问题 .

  • 4

    看完这篇文章后,我改为Subclipse .
    http://eclipsezone.com/eclipse/forums/t77149.rhtml#92035407

  • 2

    如果你与Subversion合并很多,那么你可能更喜欢CollabNet Desktop - Eclipse Edition . 您必须在CollabNet上注册一个帐户才能下载,但它是免费的 . 它本质上是Subclipse,具有更好的合并UI .

    我不隶属于CollabNet .

    CollabNet已将其改进的合并客户端提供给Subclipse的非注册用户 . 您可以通过从更新站点安装Subclipse时选择CollabNet Merge Client功能来获取它 .

  • 5

    我会说Subclipse,因为我甚至无法让Subversive工作;)

  • 6

    我实际上认为他们两个都很糟糕 . 在我看来,使用TortoiseSVN是一个更好的解决方案 . 它始终与Subclipse和Subversive存在集成问题 .

  • 14

    他们都有非常令人发指的疣,但我无法让Subversive使用我从命令行检查过的项目,这对我来说是一个显示器 .

  • 117

    tried both of them,Subclipse和Subversive都很可怕 . 两者都很难安装 . 如果使用Subversive,则无法使用外部SVN客户端 .

    但是,您需要在Eclipse中安装SVN客户端以跟踪更改,并且还不要损坏本地存储库 .

    我安装了Subclipse,但使用TortoiseSVN来实际进行comitting / tagging / branching / merge .

  • 2

    Subclipse,因为至少它有效 .

    到目前为止,颠覆对我来说是一个失败的障碍 . 我用Subclipse检查过的所有旧项目都不会很好 .

  • 3

    当然,这两个IDE插件都存在问题 . 但是,它们都不排除并行使用其他解决方案,如TortoiseSVN或命令行 . 我在工作中使用这三个项目 .

    需要记住的重要一点是,所有客户端SVN软件都应该使用相同的SVN文件格式 - 这在SVN版本之间有所不同 - 或者您要求麻烦 .

    我们发现的另一个问题是您的客户端软件使用与服务器不同的SVN文件格式 . (按文件格式,我的意思是所有信息都表示在所有那些看似不可见的.svn文件中,这些文件可以有效地记录SVN需要了解的项目文件 . )这会造成严重破坏 . 1.5服务器和1.6客户端之间存在文档错误,但我现在无法找到该链接 .

    由于与我们的SVN 1.5.5服务器不兼容,我们遇到了运行高级(IMO)Subclipse 1.6插件的问题 . 所以我们又回到了Subversive . 它工作正常,尽管速度慢但有些错误(但有所改进) . 不过,当我们的服务器更新时,我们将切换到Subclipse . 是的,我们使用TortoiseSVN检查我们的项目并将它们导入Eclipse(它更快) .

    我们发现,正如其他海报在这里所说的,如果我们运行以1.6.x格式编写文件的较新版本的TortoiseSVN,它将无法工作,但当我们恢复到TortoiseSVN 1.5.x时,它工作得很好 . 命令行客户端(我们利用Ant任务)也是如此 .

  • 6

    我选择使用Subclipse,因为它与Subversion项目关系最密切,因此更有可能更好地处理核心SVN功能 . 如果它根本无法执行任何功能,那么我将TortoiseSVN作为备份 .

  • 3

    只是一个更新 . 我最近重新安装了Eclipse,面临着Subclipse vs Subversive的选择 . 我也有一些麻烦试图让Subversive工作,所以我去了Subclipse .

    它完全安装在我的Linux 64位机器上,运行得很好 . 我将最常见的函数,如Update,Commit,..映射到快捷方式,这是一个爆炸 . 合并也很好,虽然对于更大的合并,我仍然转向TortoiseSVN . 我尝试使用3.5和3.6,它们都工作正常 . 我最终使用3.5因为某些原因键绑定不适用于3.6 .

  • 2

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

    “记住凭证”选项在此背景下被打破,并且自Subversive首次公开发布以来一直存在 .

  • 8

    如果您在公司中使用其中一个甚至可能希望将它们捆绑在自己的基于Eclipse的产品中,使用Subclipse可以更轻松地生活,因为它可以在业务友好的Eclipse Public License下使用 .

    另一方面,颠覆性需要所谓的连接器才能完全发挥作用 . 那些有不同的许可证 . 因此,您可能最终只为Subversive功能提供两个或三个不同的许可证,而所有其他Eclipse插件都在这个EPL之下 . 这也是为什么这些连接器不在eclipse.org上托管的原因 .

    这就是为什么在Subversive安装后动态下载它们(这也意味着只是镜像eclipse.org更新站点并不能在公司网络中为您提供可用的Subversive离线安装) .

  • 2

    直到2008年5月左右我才使用Subclipse,但是由于某些项目的问题,我已经切换到Subversive并且使用它没有任何问题 . 如果你正在做像无头Buckminster构建这样的花哨的东西,那么Subversive肯定是最合适的 .

  • 3

    如果您使用TortoiseSVN并定期更新版本,您可能会发现带有Subversive的Eclipse会丢失所有SVN信息并引发一些可怕的错误 .

    原因是TortoiseSVN的新版本添加了Eclipse Subversive无法理解的新元数据,除非您同时保持Eclipse SVN连接器的最新状态 .

    我通常使用SVNKit连接器,因此TortoiseSVN 1.5.x将与Eclipse SVNKit连接器1.5.x一起使用,TortoiseSVN 1.6.x将与Eclipse SVNKit连接器1.6.x一起使用 .

  • 25

    Subversive比下面列出的Subclipse更具优势 . 但只有Subversion没有的一个功能对于使用分支是如此关键 . 所以我们必须使用 Subclipse .

    Subversive 优点:

    • 视图和图标提供更多信息

    • 刷新提交同步项后,将关闭提交的文件 .

    Subclipse 优势

    • 比较两个分支的能力
  • 18

    1 Subclipse
    -1颠覆

    即使是轻微的重构,Subversive也会感到困惑,并且如上所述存在验证问题 .

    环境:STS 2.7.2(基于伽利略)

  • 174

    对我而言,无论是好还是坏,但Subversive是Eclipse Ganymede平台中的默认SVN插件,因此它有可能更好地与Eclipse集成 .

  • 15

    作为Brendons的补充回答:

    我们从版本1.5.1开始使用Subversion并首先使用Subclipse . 但是因为我们非常依赖于合并功能,所以我们切换到Subversive,它更方便,并且在合并对话框中有一个单独的Reintegrate选项 .

    可能阻碍合并的一个错误是,如果您明确选择修订版,则不会列出最后一个修订版 . 例如 . “101-100”不合并r100和“100”因此根本不合并任何东西 . (版本0.7.5)

    它使用与CVS插件相同的指标 .

  • 12

    虽然我同时使用Helios,但我对Subclipse有一点偏好,因为它对 bugtraq 属性(details here)有很好的支持 .

    历史记录视图显示一个单独的列( Headers 为 bugtraq:label ,显示 BUGID ),并且上下文菜单具有"Open Bug URL"的专用操作(链接到 bugtraq:url ) - 我无法弄清楚如何使用Subversive访问任何此类信息 .

  • 2

    自从我升级到Ganymede以来,我一直在使用Subversive . 我在Linux(Ubuntu和Fedora Core),Windows XP和Mac OS X.5中使用Eclipse . 除了让Subversion 1.5.1在Mac OS下使用正确的安全库的一些问题,我没有遇到任何问题 . 鉴于它已被采纳为Eclipse技术项目,我倾向于在长期希望方面下注 .

  • 2

    我已经使用了两者,虽然Subclipse对我来说很脆弱,Subversive(至少在之前的版本中)锁定了我的同事的帐户,当他意外地输入了错误的凭据(网络登录用于访问subversion存储库) ) .

    随着时间的推移,Subclipse往往会变得杂乱无章 . 如果Eclipse没有定期刷新,Subclipse似乎丢失了它的文件跟踪信息 . 老实说,因为我有Easy Explorer Plugin,我使用颠覆性(偶尔)历史和变化信息,但我很容易探索和使用TortoiseSVN来提交和更新我知道我最近改变的项目 .

  • 4

    我刚刚发现我无法弄清楚如何使用Subclipse查看属性diff . 在Subversive中,您在历史记录视图中选择两个修订,右键单击并从弹出窗口中选择比较属性 . 这足以让我坚持Subversive .

    尝试切换的原因是Subversive在OS X上的奇怪行为:一些名为'svn cache update'的自动操作在每次'svn update'运行后都将CPU处于异常水平,总是需要花费很长时间才能完成 .

  • 2

    FWIW,我们正在使用一个古老版本的SVN服务器(1.4个东西),我似乎记得曾经有一个更新的Subclipse破坏了向后兼容性,并且要点是“没有人应该在这样一个旧版本的无论如何SVN“ .

    颠覆是唯一一个似乎能够处理旧版本的人 . 不过,对不起,我记不起细节了 .

  • 5

    我们在团队中都尝试过 .

    由于Subclipse(来自Galileo / Helios的那个)在通过VAS验证我们的SVN服务器时遇到了一些麻烦,我们在其他地方没有问题,即TortoiseSVN客户端,浏览器(Internet Explorer 7除外) .

    所以我们安装了 Subversive ,问题解决了 .

  • 1

    Subclipse优于Subversive的优势......它实际上可以工作!

    很久以前我在开发Eclipse的协作插件时使用了Subclipse,它依赖于Subclipse . 插件的Subclipse部分从来都不是问题,虽然整个Ant的东西仍然让我感到困惑,但好的部分是你不必理解Ant部分如何工作以了解如何使用它 .

    我今天尝试安装PDT(这是一个完整的其他博客),然后是Subversive,因为像许多人一样,它被描绘成“Eclipse SVN插件” . 我无法一次安装这四个连接器,所以我不得不一次安装一个,一次一个地安装它们,一次只能安装SVN服务器 .

    我正在尝试PDT和Subversive,因为我想节省时间,而不是在插件的不同问题上花费更多 .

    我卸载了Subversive,安装了Subclipse,并且就像那样连接了 .

    节省时间和麻烦,从一开始就去Subclipse .

  • 34

    我也用过这两个 . 我遇到的问题是我的工作区中有大约150个项目,而当我选择所有插件并说“同步存储库”时,Subversive会花费很长时间 . 用户界面会冻结很长时间 . 我发现Subclipse更稳定 .

    无论如何,我经常组合这些工具 . 对于一些任务,比如检查整个分支,我更喜欢命令行 . 对于其他人,我使用TortoiseSVN . 我主要使用Subclipse查看历史记录并直接在工具上运行比较,偶尔也会比较(我更喜欢Beyond Compare) .

相关问题