我可以从Eclipse切换SVN存储库吗?

时间:2009-03-24 22:57:27

标签: eclipse svn

我正在将Subversion存储库从一台机器移动到另一台机器。我在各种机器上都有一些零散的工作副本,我发现我可以使用以下命令轻松地将工作副本从旧服务器切换到新服务器:

svn --relocate svn://oldServer/repo svn://newServer/repo

但是,在我的一台机器上,我使用Eclipse和Subclipse,我不喜欢在Eclipse项目中使用命令行SVN。我的问题是,是否可以使用Subclipse或Subversive从Eclipse中切换SVN存储库。

9 个答案:

答案 0 :(得分:97)

我认为您需要进入“存储库浏览器”视角,然后右键单击当前存储库并将其“重定位”到另一个域。

答案 1 :(得分:14)

不要使用“团队/交换机”选项,而是更改为“SVN存储库浏览”透视图,并在存储库的位置属性中更改其中的URL位置。就像Indigo上的魅力一样 - 在我的情况下使用Subversive。

当使用Subversive时,这将显示警告“附加的项目将被重新定位,因为存储库根URL与先前输入的”不同,这正是您想要的。在执行此操作之前,请务必打开要重新定位的所有项目。

当使用获取“无法重新定位已连接项目”时“无法执行重定位,因为新URL引用了不同的存储库”那么您的存储库根目录可能没有主干/ tags / branches文件夹,或者在子文件夹中也有这样的文件夹。然后在选项卡高级,禁用选项启用结构检测可能会有所帮助。

如果您获得“无法执行重定位,因为新URL指的是无效的存储库(指定了错误的URL或凭据)”,那么还要确保新存储库URL中的根路径匹配旧URL的根。 (换句话说:确保上面屏幕截图中的/new/path与旧网址具有相同的子文件夹。)

答案 2 :(得分:12)

右键点击项目 - >团队 - >断开。

然后右键单击该项目 - >团队 - >分享 - >到你的新SVN。

就是这样!

答案 3 :(得分:4)

在Eclipse Navigator中,如果右键单击项目名称,将出现一个子菜单。在该子菜单上选择Team,它将提供一些附加菜单选项。选择“Swich to another Branch / Tag / Revision ...”,将出现一个窗口,允许您指定新分支或在您的情况下指定新的存储库位置。

答案 4 :(得分:2)

您可以执行以下操作:

转到项目资源管理器视图 - >右键单击您的项目 - >团队 - >切换...现在选择新网址。

多数民众赞成!

答案 5 :(得分:1)

我无法从我的日食中重新定位。我在同一个存储库的不同分支和标签(只读它只用于比较不同版本)上有不同的项目。当我们的svn服务器的ip改变了,我可以通过TortoiseSVN而不是从Subclipse重新定位。

http://oldserver/svn/PROJECTNAME更改为http://newserver/svn/PROJECTNAME我得到:

org.apache.subversion.javahl.CientException: Invalid operation on the current working directory
svn: Cannot relocate 'E:\…\workspaces\PROJECTNAME\tags\modulename\2.4.007\base' as it is not the root of a working copy; try relocating 'E:\…\workspaces\PROJECTNAME\tags\modulename\2.4.007' instead

好的,但我没有控制权。我以涉及我的主机文件的解决方法结束了。

答案 6 :(得分:1)

在Eclipse中,转到Window - >透视 - >开放视角 - >其他 - > SVN资源库探索。单击确定

然后右键单击要更改的存储库 - >位置属性。

更改网址点击完成。

那就是它!

答案 7 :(得分:0)

您可以在DNS中交换服务器名称;这可能比切换所有工作副本更容易。

答案 8 :(得分:0)

团队->断开连接

团队->分享->您的新SVN

这是比开关更好的解决方案。