几年前对这个比较熟悉,最近几年不怎么用了,呵呵 感觉有点生疏了,留为笔记吧!
场景介绍:
在/var/local/backupn目录下,有两个svn 仓库,分别为gg和data
现在要把这两个svn仓库迁移到新机器上去!
1、备份版本库
svnadmin dump /var/local/svndata/gg/ > /var/local/backup/gg_20130909
svnadmin dump /var/local/svndata/data/ > /var/local/backup/data_20130909
2、将备份的版本scp到目标服务器
scp root@192.168.1.246:/var/local/backup/data_20130909 .
scp root@192.168.1.246:/var/local/backup/gg_20130909 .
3、导入版本库
导入之前创建两个新库:
mkdir -p /data/svn/data/
mkdir -p /data/svn/gg
svnadmin create /data/svn/data
svnadmin create /data/svn/gg
导入:
svnadmin load /data/svn/data/ < data_20130909
svnadmin load /data/svn/gg/ < gg_20130909
4:安装svnserver(省略.....)启动svnserver
/usr/local/svn/bin/svnserve -d -r /data/svn/ &
5:对于已经下载下来的svn 代码,需要执行类似如下的操作:
svn switch --relocate svn://oldip/data svn://newip/data
或
svn switch --relocate svn://oldip/gg svn://newip/gg
这种迁移方式,时间比较长,因为导出和导入都需要比较久的时间!
提示:在导出和导入过程中程序员不能往svn仓库提交代码,否则仓库版本不一致,会丢东西
其实也可以,将gg和data备份压缩后,然后在新机器上创建svn repository后,直接覆盖!
阅读(1720) | 评论(0) | 转发(0) |