龙空技术网

教科书式SVN版本库迁移

IT生涯 1164

前言:

现时小伙伴们对“svn url地址格式”可能比较着重,看官们都需要了解一些“svn url地址格式”的相关文章。那么小编在网摘上汇集了一些有关“svn url地址格式””的相关资讯,希望姐妹们能喜欢,大家快快来了解一下吧!

导出原SVN版本库

dunp方式可分为全量导出和增量导出

全量导出:

压缩备份:[root@aliyun home] svnadmin dump /home/svn/repos1 | gzip > ./repos1.gz不压缩备份:[root@aliyun home] svnadmin dump /home/svn/repos1 > ./repos1.svn

增量导出:

[root@aliyun home] svnadmin dump /home/svn/repos1 -r 0:50 > repos1[root@aliyun home] svnadmin dump /home/svn/repos1 -r 51:100 --incremental > repos2[root@aliyun home] svnadmin dump /home/svn/repos1 -r 101:150 --incremental > repos3

注意了如果是增量导出(新版本库中已经导入过版本)需要加–incremental 参数

新服务器上创建版本库

[root@svn home] svnadmin create /home/svn/reposnew

将导出的备份文件复制到新服务器上并导入该文件

压缩过的文件不能直接导入,需要解压(所以如果两台服务器可以内网通信完全不需要进行压缩)

[root@svn home] gzip -d repos1.gz[root@svn home] svnadmin load /home/svn/reposnew < repos1

未压缩文件直接导入即可:

[root@svn home] svnadmin load /home/svn/reposnew < repos1.svn

如果是分版本导入出现该错误提示就是因为导出文件时没有加参数 --incremental 导致:

[root@svn home] svnadmin load /home/svn/reposnew < /home/repos2<<< Started new transaction, based on original revision 5svnadmin: E160020: File already exists: filesystem 'reposnew/db',......

导入的过程可能花费的时间较长,完成后设置好账户密码通过本地svn客户端浏览测试。

迁移了SVN版本库自然的本地电脑上的地址也需要更换,windows 下如下:

在弹出框中修改为新的地址即可。

如果服务器上有直接从SVN版本库中提取代码,那么也是需要修改地址,先查看服务器上对于目录的信息可以获取到SVN地址:

[root@aliyun home] svn info /data/wwwroot/testPath: .Working Copy Root Path: /data/wwwroot/testURL: svn://192.168.31.8/xxx/testRepository Root: svn://192.168.31.8/xxxRevision: 335.......

修改地址通过svn switch 命令,基本格式如下:

[root@aliyun test] svn switch --relocate svn://old_IPADDR/repos 

例如上面这个目录就需要调整为:

[root@aliyun test] svn switch --relocate svn://192.168.31.8/xxx/test 再次查看信息就会变更了:[root@aliyun test] svn info /data/wwwroot/testPath: .Working Copy Root Path: /data/wwwroot/testURL: svn://192.168.31.10/xxx/testRepository Root: svn://192.168.31.10/cnyunwei.......

标签: #svn url地址格式