SVN代码迁移


1. 新服务器上搭建好svn服务

参考:Redhat linux 安装SVN服务器 CollabNetSubversionEdge


2. 使用svnadmin dump命令导出svn仓库里面的Project

svnadmin dump /home/svnroot/repository1/版本库名 > 文件路径
例如:/svn/csvn/bin/svnadmin dump /boncmbbi/svn/csvn/data/repositories/ProjectA    > /svndump/projects

(1) /svn/csvn/bin/svnadmin 是svnadmin命令的全路径,前面的文件夹了路径依你的环境所定;

(2) /boncmbbi/svn/csvn/data/repositories/ProjectA 是svn服务器中ProjectA的路径;

(3) /svndump/ProjectA 是导出后的文件路径,/svndump是一个已经存在的文件夹, ProjectA是你希望导出后的文件的名字。


辅助命令:查看ProjectA的最新revision号

/svn/csvn/bin/svnlook youngest /svn/csvn/data/repositories/ProjectA


3. 使用scp命令,将dump出的project文件传输至新服务器特定文件夹下

我的两台svn服务器在一个局域网内部,因此我使用scp命令来传输文件。

scp /svndump/ProjectA    userName@IP:FolderPath

例如:scp /svndump/ProjectA        [email protected]:/opt/svnimport


4. 新的svn上,创建一个同名的新的空Project

(1) 管理页面或者命令创建空的project:ProjectA

(2) 使用load命令,导入dump出的数据

/csvn/bin/svnadmin load   /csvn/data/repositories/ProjectA < /opt/svnimport/ProjectA


至此完毕!

你可能感兴趣的:(svn迁移)