美文网首页
svn 版本库主从设置

svn 版本库主从设置

作者: 宇晨棒棒的 | 来源:发表于2023-03-07 17:52 被阅读0次

前提:

主机A:192.168.1.10  (主)

主机B:192.168.1.20     (备)

1.安装svn软件(主机A作为主,主机B作为从):

yum install subversion -y

mdkir  svnrepo

svnadmin create /home/app/svnrepo/ycsvn

2.修改配置文件:

修改svnserve.conf中的路径设置,并且主从环境上的svnserve.conf中的anon-access都要设置成none:

anon-access = none

auth-access = write

password-db = passwd

authz-db = authz

realm = ycsvn

3.修改hooks文件夹下的pre-revprop-change(注意主从环境上的都要做同样的修改):

[root@bsdi hooks]# vim pre-revprop-change.tmpl

#!/bin/sh

exit 0

[root@bsdi hooks]# mv pre-revprop-change.tmpl pre-revprop-change

[root@bsdi hooks]# chmod +x pre-revprop-change

4.设置完成之后启动svn:

svnserve -d -r /home/app/svnrepo/ycsvn --listen-port  9100   (主)

svnserve -d -r /home/app/svnrepo/ycsvn --listen-port  9100      (从)

5.导出导入版本库:

svnadmin dump 版本库 > xxx.dump

svnadmin load /app/svnrepo/版本库名 < /app/XXX.dump &

6.接下来在主环境上操作,如下这一条命令是同步版本:

svnsync init svn://192.168.1.20:9100/ycsvn   svn://192.168.1.10:9100/ycsvn   --username yuchen --password pwd123!@ --no-auth-cache

复制版本 0 的属性。

7.同步数据:

 svnsync sync --non-interactive svn://192.168.1.20:9100/ycsvn --username yuchen --password pwd123!@

8.接下来在主环境上使用hooks下的post-commit脚本进行SVN实时同步:

修改post-commit如下:

vim post-commit.tmpl

#!/bin/sh

svnsync sync --non-interactive  svn://192.168.1.10:9100/ycsvn --username yuchen --password pwd123!@

mv post-commit.tmpl post-commit

chmod +x post-commit

此时当主环境上SVN有代码提交时,会触发这个脚本并执行里面的命令实现主从同步.

相关文章

网友评论

      本文标题:svn 版本库主从设置

      本文链接:https://www.haomeiwen.com/subject/aeqildtx.html