Eclipse最佳SVN客户端推荐及Subversive迁移到Subclipse问题咨询
大家可能知道,Subversive项目已经停止维护,甚至无法在Eclipse 2021-09版本上运行:安装过程无报错,但启动时会出现资源缺失的问题。
我有大量基于SVN的遗留项目,需要使用SVN客户端,且优先选择Eclipse内的集成客户端。据我所知目前唯一可选的是Subclipse,如果有更优的SVN客户端选项也恳请大家告知。
我主要有以下三个问题:
- 有没有办法保留Subversive客户端的同时升级到最新版Eclipse(比如2021-09版本)?
- 如果上一个问题的答案是“否”(我个人也倾向于这个结果),那么目前Eclipse最好用的SVN客户端是什么?
- 如果上一个问题的答案是Subclipse,我是否可以在保留未提交文件的前提下,从Subversive迁移到Subclipse?
关于从Subversive迁移到Subclipse的相关问题
通常这类迁移可以通过「Team → Share project」操作完成,但我的Eclipse工作区中没有这个选项。我的工作区里有两个项目:旧项目是基于Subversive的,其Team子菜单中只有「Apply patch」选项;另一个是通过Subclipse检出后断开连接的新项目,可以通过上述「Team → Share project」操作重新连接。
我甚至使用1.14.1版本的SVN客户端对两个项目都执行了svn upgrade操作,但结果没有变化:Subclipse创建的项目可以重连,但Subversive的旧项目依然不行。
更新1
遗憾的是,Team右键弹出菜单中没有「Share project」选项。
问题解答
1. 能否保留Subversive同时升级Eclipse到2021-09及以上版本
答案为否。Subversive已停止官方维护,最后适配的Eclipse版本为2021-06,2021-09及之后的版本对底层插件接口做了不兼容调整,没有兼容补丁可以让旧版Subversive正常运行,强制安装会出现启动阶段资源加载失败、功能入口缺失等问题,无可用修复方案。
2. 目前Eclipse最好用的SVN客户端是什么
目前唯一仍在活跃维护的Eclipse生态内SVN集成客户端就是Subclipse,它适配所有最新版Eclipse,功能覆盖Subversive的所有常用操作,同时兼容不同版本的SVN工作副本格式,没有其他稳定的内置SVN客户端可选。
3. 能否保留未提交文件从Subversive迁移到Subclipse
可以,未提交的本地修改可完整保留,无需提交、丢弃修改或重新检出项目,操作步骤如下:
- 选中无法找到Share入口的旧项目,右键选择「Properties」,找到「Team」属性页,清除当前的项目版本控制关联,确认后关闭属性页
- 重启Eclipse,再次右键点击项目打开Team子菜单,「Share Project」选项就会正常显示
- 选择Share Project后,在版本控制类型中选择SVN,插件会自动识别项目目录下已有的
.svn工作副本文件,自动关联对应的远端仓库地址,本地所有未提交的修改都会完整保留,不会被覆盖或清除 - 如果上述步骤执行后依然无法识别,可手动核对项目根目录下是否存在
.svn隐藏文件夹,确认svn upgrade操作已经将工作副本格式升级到Subclipse对应支持的1.8+版本即可
内容的提问来源于stack exchange,提问作者FoxyBOA

