开发工程师提出要整理数据库,就是把之前放得很混乱的目录结构导入新的库,并保留之前的版本及日志信息。网上搜索到解决方案并实际验证后,总结解决方案如下:
需要使用工具rsvnmanager ,
下载地址是:http://rsvndump.sourceforge.net/,
命令帮助:http://rsvndump.sourceforge.net/manpage.html
1. 下载 rsvndump-0.5.5.tar.gz
2. 安装
[root@localhost opt]# tar zxvf rsvndump-0.5.5.tar.gz
[root@localhost opt]# cd rsvndump-0.5.5
[root@localhost rsvndump-0.5.5]#./configure --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config
(如果之前没有安装apr,必须先装apr,一般会装在/usr/local/apr目录下,在上面命令中改成这个目录就好了)
[root@localhost rsvndump-0.5.5]#make
[root@localhost rsvndump-0.5.5]#make install
安装完成后,rsvndump会出现在/usr/local/bin目录下
[root@localhost bin]# ls
coraenv dbhome oraenv rsvndump
3.导出
首先把要导出的内容导出到dump文件,本例中导出内容为.../test_proj/trunk/src目录,其中test_proj为配置库
[root@localhost ~]# rsvndumphttp://localhost/opt/svndata/test_proj/trunk/src > src.dump
[root@localhost ~]# cd /opt/svndata
4.导入
导入到配置库tut_proj, 父目录为.../tut_proj/svnmanager/doc,其中父目录要先建好,否则导入会出错
[root@localhost ~]#svnadmin load tut_proj --parent-dirsvnmanager/doc < ~/src.dump
注意啊,导入的只是当初.../test_proj/trunk/src目录下的文件,不包括 src目录啊.