svn 版本库的备份和还原

本文介绍了Subversion (SVN) 版本库的备份和还原方法,包括全备份与增量备份的具体步骤,以及如何利用svnadmin命令进行操作。还提供了一个高效备份的大版本库技巧,涉及差异存储和压缩技术。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

svn 版本库的备份和还原
作者:comet 日期:2007-06-16
字体大小: 小 中 大

仓库中版本的备份及还原形式主要有两种:
方式一:直接备份仓库整个文件夹(全部版本),重装svn程序后直接还原过去。
方式二:通过svn命令行备份和还原指定版本号的数据
    全备份:使用svnadmin hotcopy或svnsync来做,例:
svnadmin hotcopy path/to/repository path/to/backup --clean-logs
    增量备份:使用svnadmin dump的--incremental选项来实现
svnadmin dump 版本库路径及名称 --revision 上次导出的版本号:到本次要导出到的版本号 --incremental > 导出的命名
    还原版本:svnadmin load 要恢复的版本库路径及名称 < 导出的命名
svnadmin hotcopy path/to/repository path/to/backup --clean-logs
一个技巧:
如果你有一个较大的Subsersion版本库而你又想用最少的空间来将它备份下来,用这个命令(请将/repo替换成你的版本库路径)吧:
svnadmin dump --deltas /repo |bzip2 |tee dump.bz2 | md5sum >dump.md5
分步解释:
最重要的一步是 -deltas,将消耗更多的CPU资源,但拥有更有效的差异存储办法。
bzip2压缩方案比gzip慢,但换来的更好的压缩率。
更有趣的是,tee方法将压缩的数据流转向到文件dump.bz2,同时将其输出到标准输出,后者有转向给了MD5摘要计算工具。
要恢复这个版本库,检查校验值(md5sum创建的),创建一个空的版本库,恢复备份:
md5sum -c dump.md5 <dump.bz2
svnadmin create newrepo
bzcat dump.bz2 | svnadmin load newrepo
请享受压缩后用MD5校验的备份吧,最后别忘记将dump.md5和dump.bz2存储到真正安全的地方!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值