一、备份VisualSVN项目

1. 现在要使用Linux作为svn服务器,之前是在Windows Server 2008上的,用的是VisualSVN, 如下图所示。

SVN服务器从Windows迁移到Linux-LMLPHP

2. 现在svn中有一个项目fpp,需要将fpp这个项目导出到linux环境下。运行cmd,输入命令 svnadmin dump E:\Repositories\fpp > e:\svnbak\fpp.dump将项目导出到e:\svnbak目录下。运行结果如下:

SVN服务器从Windows迁移到Linux-LMLPHP

3. 可见命令会导出每个版本的详细信息,保证了之前的历史信息不会丢失。现在我们便得出备份文件fpp.dump,如下:

SVN服务器从Windows迁移到Linux-LMLPHP

4. 利用批处理实现项目的批量导出,编写svnbak.bat, 双击运行,会一次性导出所有项目,结果如下图:

SVN服务器从Windows迁移到Linux-LMLPHP


二、上传备份文件到Linux

1. 利用ftp, ssh等工具将fpp.dump文件传输到Linux服务器上,这里利用直接利用openSSH这个软件上传。如图,文件上传成功,文件的路径为/root/fpp.dump。

SVN服务器从Windows迁移到Linux-LMLPHP

三、Linux下SVN的安装与配置

1. Linux下安装svn,这里直接利用yum命令进行安装。yum install subversion完成subversion的安装。

2. 建立版本库目录svndata。

mkdir /svndata

svnserve -d -r /svndata #启动svn,设置版本库目录为/svndata

killall svnserve #关闭svn

3. 建立项目库

svnadmin create /svndata/fpp

4. 配置用户访问权限

cd /svndata/fpp/conf

vi svnserve.conf

释放如下几行的注释

anon-access=none

auth-access=write

password-db=passwd

5. 增加访问用户,格式为(username = password),等号两边要加空格,否则无效。如下图,没有加空格,就一直没用:

SVN服务器从Windows迁移到Linux-LMLPHP

6. svn的命令这里不作介绍,大家自己去学习使用。

四、导入备份文件

1. 输入命令:svnadmin load /svndata/fpp <  /jtroot/fpp.dump

SVN服务器从Windows迁移到Linux-LMLPHP

2. 为了避免逐个导入项目,所以写了一个shell脚本,进行批量导入,遍历备份目录下所有*.dump文件,并产生相应的导入命令,15个项目,花了10分钟左右完成导入,脚本如下:

SVN服务器从Windows迁移到Linux-LMLPHP

02-02 05:27