最近,我被迫将安装了版本控制服务器的开发服务器移动到新位置subversion
因此服务器获得了新的IP
地址。存储库在磁盘上的物理位置是 /srv/svn_firmAA/project1
。旧subversion
服务器存储库地址为 svn://192.168.0.2:10000/srv/svn_firmAA/project1
。现在,新的subversion
服务器存储库地址已svn://xxx.xxx.xxx.xxx:10000/srv/svn_firmAA/project1
,我尝试使用以下方法将工作副本relocate
到新IP
:svn switch --relocate svn://192.168.0.2:10000/srv/svn_firmAA/project1 svn://xxx.xxx.xxx.xxx:10000/srv/svn_firmAA/project1
我收到以下错误:
svn: E155024: Invalid source URL prefix: 'svn://192.168.0.2:10000/srv/svn_firmAA/project1' (does not overlap target's URL 'svn://192.168.0.2:10000')
为什么?
这是输出svn info
工作副本:
Path: .
Working Copy Root Path: /home/user/Projects/working_copy
URL: svn://192.168.0.2:10000
Relative URL: ^/
Repository Root: svn://192.168.0.2:10000
Repository UUID: 54d40152-b288-42d4-b588-490a5dcf01bf
Revision: 579
Node Kind: directory
Schedule: normal
Last Changed Author: user
Last Changed Rev: 579
Last Changed Date: 2015-12-30 11:06:19 +0100 (sre, 30 dec 2015)
我已经设法解决了问题:
- 传入端口错误(端口
20000
转发到服务器上的端口10000
) -
svn switch --relocate
参数不得包含存储库路径:SVN 交换机 --重新定位 svn://192.168.0.2:10000 svn://xxx.xxx.xxx.xxx:20000
现在它完美地工作了!