使用svnsync备份(远程)svn仓库

来源:互联网 发布:彩虹六号围攻n卡优化 编辑:程序博客网 时间:2024/04/25 23:23
=摘要=
在svn中,利用svnsync命令可以对某个代码仓库进行备份.这里主要简介怎么使用svnsync进行仓库备份以及一些需要注意的地方.

下面将詳細说明一下是怎么进行备份的.(测试平台是linux 2.6.x + svn 1.6.x),对于win平台将是类似的做法. 


=实施备份=
这里的备份是完全复制一个远程仓库.
1: 使用svnadmin仓库一人本地的空的仓库.
$svnadmin create ~/svn-storage-bak
2: 修改这个新的仓库的相关脚本
2.0 进入svn-storage-bak这个仓库的根目录中:~/svn-storage-bak
2.1:复制hooks/pre-revprop-change.tmpl为hooks/pre-revprop-change
2.2:给上面这个脚本加上执行权限.
#chmod u+x hooks/pre-revprop-change
2.3:编辑上面脚本,添加如下命令,使得每一行非注释指令是exit 0
 {{{
exit 0
 }}}
 然后就是保存啦.
3: 使用svnsync设置新的仓库同步指向目标仓库
$svnsync init file:////home/usrname/svn-storage-bak 目标仓库的url
4: 进行同步了.
$svnsync  sync file:///home/usrname/svn-storage-bak
5: 这个时候将看到标准输出一些备份信息.


好了,上面演示了怎么备份一个已有数据的版本仓库,下面将討論这过程中的相关注意地方..
=注意=
存储目标仓库的备份的svn仓库要是一个空的仓库,否则将有如下提示.
svnsync: Cannot initialize a repository with content in it


=参考资料=
http://nowing.iteye.com/blog/844608

原创粉丝点击