svn迁移

svn迁移

一、svn迁移前的准备工作

1、 迁移前最好做一个SVN版本校验,看看全部版本是否能够顺利校验通过。

2、 如版本有问题,则同项目负责人协商沟通,商量对策。如没有问题则进行下一步。

3、 首先同项目负责人沟通SVN具体迁移时间。

4、 告知项目负责人,数据迁移时,相关人员一律不准对SVN进行更新和提交操作。

5、 迁移前详细了解svnadmin命令的详细用法。

二、svn备份方式

 关闭所有运行的进程,并确认没有程序在访问存储库(如 httpd、svnserve 或本地用户在直接访问)。

1、压缩备份
svnadmin dump /home/workhome/svn/repository | gzip > ~/repository-backup.gz


2、不压缩备份
svnadmin dump /home/workhome/svn/repository > ~/repository-backup.svn

三、恢复svn存储库


1、建立新的svn存储库
svnadmin create /home/workhome/svn/newrepository


2、确认成功与否
ls -l /home/workhome/svn/newrepository


3、导入存储库数据
svnadmin load /home/workhome/svn/newrepository < ~/repository-backup.svn

四、svn迁移的方法

1、进入原始SVN库所在路径。

2、使用svnadmin命令将你需要迁移的项目库dump出来。这里需要等待一段时间。

例如:将原来的Repository导出为一个文件dumpfile
> svnadmin dump path/to/old-repo > dumpfile
 

3、在新服务器上安装svn服务端和客户端程序。

4、确定SVN版本库存放路径,并使用svnadmin命令创建版本库。

5、将刚才备份出来的数据,导入到新的库中。此处仍需要等待一段时间。

例如:将dumpfile导入到新的Repository
> svnadmin load path/to/new-repo < dumpfile
 

6、检查新的Repository的conf/目录下的配置文件, 检查hooks/目录下的构子程序等等...

需要把conf/svnserve.conf中的配置项打开,比如

authz-db = authz

password-db = passwd

anon-access = none

auth-access = write
 

7、配置svn启动脚本,配置完毕后开起svn服务。

8、查看服务是否正常启动。

9、收尾工作,与项目负责人沟通,告诉他们常用的发版工具了,如有需要连接svn服务器的。相应的服务器地址也需要更改成新的地址。或者直接协助他们修改。直到测试无误。

标签: