1、在旧服务器中,使用命令svn --version查看svn版本,例如

2、根据第一步得到的svn版本来安装(根据自己的版本号,自行百度),我这边是直接执行yum安装,刚好是相同版本

yum -y install subversion

检查SVN 是否安装成功。

svn --version   #出现version,表示安装成功

迁移步骤
建议迁移的时候,将所有源库SVN所有账号的权限改成只读,或者停掉SVN服务器

SVN的迁移有两种方式:

1) dump出源机器SVN的代码库,然后load到新服务器上去。

2) 使用 svnsync 直接同步源机器代码库。

比较这两种迁移的方式,我比较推荐第二种,使用svnsync进行迁移。第一种使用dump出源机器代码库,dump完,看了一下dump文件,几十个G,太大了

下面直接记录下第二种方式迁移的步骤
1、新服务器:
 

svnadmin create /usr/local/svn_home/repostory 创建版本库repostory
cd /usr/local/svn_home/repostory

cp hooks/pre-revprop-change.tmpl hooks/pre-revprop-change

chmod 777 hooks/pre-revprop-change

vim hooks/pre-revprop-change # 修改最后一行代码,如下
exit 0

具体迁移命令
svnsync  init  file:///usr/local/svn_home/repostory svn://ip或者域名/repostory
svnsync sync file:///usr/local/svn_home/repostory

在执行命令 svnsync  init  file:///usr/local/svn_home/repostory svn://ip或者域名/repostory   时,会出现 

 然后把老服务器上的 /usr/local/svn_home/repostory/conf 路径下的文件,拷贝到新服务器,然后用authz文件里的账号和密码进行认证。

3、等待迁移完成,进行版本校验 

svnadmin verify /usr/local/svn_home/repostory

 没提示错误,代表迁移成功

4、关键步骤
复制旧服务器上的svn仓库uuid到新服务器对应的svn仓库,这样子svn客户端才不会报错
# 旧服务器
cat /usr/local/svn_home/repostory/db 
5aa55edd-71c3-4f5d-be1e-2ea2155f1a49
# 新服务器 
vim /data/svn/www/db/uuid
# 用旧服务器的uuid替换这里的uuid

现在可以去svn客户端测试了

测试
关键步骤,将svn工作副本切换指向新服务器,核心命令是

svn relocate

不同系统不同客户端,操作大同小异,大家自行操作即可

最后可以测试一下提交svn能不能成功了

参考:SVN安装部署_时倾 | 职业人生的博客-CSDN博客

Linux下SVN服务器迁移(详细版)___小胖狗的博客-CSDN博客_linux svn迁移

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐