Blog信息 |
blog名称: 日志总数:1304 评论数量:2242 留言数量:5 访问次数:7574450 建立时间:2006年5月29日 |

| |
[Subversion]svnsync:Subversion备份版本库的好工具 软件技术, 电脑与网络
lhwork 发表于 2008/3/10 16:02:37 |
本文介绍利用svnsync来同步版本库,达到备份版本库的目的要用到两个命令1、svnsync init初始化,建立目标库和源库之间的同步关系命令格式 svnsync init 目标库URL 源库URL2、svnsync sync真正的同步命令格式 svnsync sync 目标库URL目标:本次实现的是版本库的远程自动备份,将版本库备份到另一台机器上假设我们要同步的源版本库为 http://192.168.0.1/svn/proj1 位于机器A,具体路径我们不必理会,因为我们使用http协议目标库在机器B,file:///svn/proj1,这个为了简单和安全,我们使用file://协议过程:1、在机器B上,创建目标库mkdir /svnsvnadmin create /svn/proj12、修改目标库的脚本pre-revprop-change进入/svn/proj1/hooks/cd /svn/proj1/hooks/cp pre-revprop-change.tmpl pre-revprop-changevi pre-revprop-change REPOS="$1" REV="$2" USER="$3" PROPNAME="$4" ACTION="$5" if [ "$ACTION" = "M" -a "$PROPNAME" = "svn:log" ]; then exit 0; fi echo "Changing revision properties other than svn:log is prohibited" >&2 exit 1原脚本的意思是如果修改的是svn:log属性,将允许修改,返回0;否则,不允许,返回1我们要将它改为允许修改所有的属性,在脚本中直接返回0,新的脚本如下: exit 0;3、初始化svnsync init file:///svn/proj1 http://192.168.0.1/svn/proj1会提示输入用户名和密码,这里提供的用户名和密码是可以完全读取http://192.168.0.1/svn/proj1的用户名和密码4、同步svnsync sync file:///svn/proj1依然会提示输入用户名和密码,不过,你可以在这个命令之后加上 username 、password参数,例如svnsync sync file:///svn/proj1 --username username --password password |
|
|