我的QQ:18324258
朋友们,如果需要交流,请直接联系我的QQ,并说明相互学习,不要留给我QQ号,我不会动不动就上来看的。希望多交流,谢谢!
LINUX下自动增量备份
上一篇 /
下一篇 2010-09-01 20:14:11
/ 个人分类:SCM
用svnsync同步备份
一、备份准备
源服务器:172.16.91.4 linux
库路径:/project/svn
目标服务器:172.16.80.227 Windows
库路径:e:\svnbak
svn版本库1.6
项目备份模式,使用URL模式
在每次新增一个项目后,都需要进行同步备份设置。
二、方法:
1.在目标服务器上创建空项目,以ecom项目为例.
在CMD中,进行D:\Program Files (x86)\Subversion\bin目录,执行svnadmin createe:\svnbak\ecom;
在e:\svnbak\passwd\authz目录中,设置备份的用户的可写权限。
2.在e:\svnbak\ecom\hooks目录下,创建pre_revprop-change.bat文件,内容为空;
3.执行初始化
svnsync inithttp://172.16.80.227/svn/ecom http://172.16.91.4/svn/ecom
即svnsync init目标库源库
将向你询问登录的用户名和密码
正确后,显示
Copied properties for revision 0.
4.执行同步
svnsync sync http://172.16.80.227/svn/ecom
即svnsync sync目标库
5.更新同步
在源库的hooks下面,添加post-commit脚本
内容:
#!/bin/sh
REPOS="$1"
TXN="$2"
SVNSYNC=/opt/svn/bin/svnsync
$SVNSYNC sync--non-interactive--username ssy--password ****** http://172.16.80.227/svn/spi/
即提交更新后,即执行同步命令,不进行交互
把post-commit修改为svnroot组所有,并属可执行权限。
三、说明:
如果post-commit脚本出错,或者无可执行权限,在提交更新时会报错。
可以在hooks目录,直接执行./post-commit命令来调试脚本。
另1.6版本要求一定要定义清楚SVN_HOME,所以在post-commit脚本中不要直接写/opt/svn/bin/svnsync sync --non-interactive --username ssy --password ssyyinghttp://172.16.80.227/svn/spi/,否则即使直接执行./post-commit没有报错,在提交时钩子也无法执行。
收藏
举报
TAG: