您的位置:首页 > 其它

利用svnsync同步SVN版本库

2015-10-21 10:46 225 查看
本文介绍利用svnsync来同步版本库,达到备份版本库的目的。

关于SVN的介绍:/article/6938887.html

我的环境:(环境不必与我相同,视实际而这定,我试过备用低版本的SVN Server同步,也成功了)

主SVN Server(Windows Server 2008 R2 + VisualSVN Server Manager r2.54)

备用SVN Server(Windows Server 2003 + VisualSVN Server Manager r2.54)

目标:

实现的是版本库的远程自动备份,将版本库备份到另一台机器上。当主版本库出现问题时,可切换到备用版本库,从而提高SVN的可用性。

目标版本库机器A,路径为:"http://192.168.10.42/svn/ivey"(这里主机名对应的是这个IP地址),具体路径不必理会,因为这里使用http协议(主SVN)





源版本库机器B,路径为:"file:///D:/SVN_Repositories/ivey",这个为了简单和安全,我们使用file:///协议 (备用SVN) [“D:/SVN_Repositories/ivey”视实际版本库路径而定]

过程:

1、在源版本库机器B上,创建目标库

a.





b.





2、修改源版本库机器B中目标库的脚本“pre-revprop-change.tmpl”

进入”D:\SVN_Repositories\ivey\hooks” (D:\SVN_Repositories 这个代码库的保存路径,视实际而定)

编辑”pre-revprop-change.tmpl”将其最后一行修改为:”exit 0”;





3、继续创建”pre-revprop-change.bat”

内容:“echo "Changing revision properties other than svn:log is prohibited" >&2

exit 0”





4、初始化 (最重要的一步)

a.首先需要保证,有访问目标版本库机器A中 欲同步的SVN路径的访问权限,没有的话,自行添加;





b.进入SVN安装目录里的BIN文件夹:“cd C:\VisualSVN Server\bin” “视实际安装路径而定”





c.输入”svnsync init file:///D:/SVN_Repositories/ivey http://192.168.10.42:88/svn/ivey/”会提示输入用户名和密码,这里提供的用户名和密码就是刚刚确认的4.a中的用户与密码;(”svnsync init file:///”这个是固定的,"D:/SVN_Repositories/ivey"这是源版本库机器B中SVN目录的路径,"http://192.168.10.42:88/svn/ivey/"这是目标版本库机器A中SVN目录路径。注意空格)





5、同步

继续输入"svnsync sync file:///D:/SVN_Repositories/ivey" [D:/SVN_Repositories/ivey,为同步目录]





到此完成了一次同步。

PS:以后的同步就只需操作第5步“同步”,不再需要初始化了。Good luck!

__________________________________________________________________________

本文原地址:http://wowking.blog.51cto.com/1638252/847510

另外文件备份策略:http://wenku.baidu.com/link?url=oN8cajtgpcZSnYNf5oQrDA_tdntUSETcGuZ3TOvLTCh_ogZ7juIS6Ens611lspuYD8ggNFpLegsjHAJ8fJ1INAPJVnqpHMzdPQfzgOC9BB3
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: