svnsync应用场景:
1、减缓单个svn版本库的压力
2、更合理分配资源权限
svn实时同步配置:(安全考虑,svn端口和版本库用中文代替)
svn主从搭建:
环境:192.168.1.221 主
192.168.1.217 从
1、主从分别安装svn版本库(略过)
svn主:
[root@svn hooks]# cp pre-revprop-change.tmpl pre-revprop-change
[root@svn hooks]# chmod +x pre-revprop-change
vim pre-revprop-change
if [ "$ACTION" = "M" -a "$PROPNAME" = "svn:log" ]; then exit 0; fi
echo "Changing revision properties other than svn:log is prohibited" >&2
exit 0
[root@svn ~]# svnsync init svn://192.168.1.221/版本库 svn://192.168.1.217/版本库 --source-username renzhiyuan --source-password renzhiyuan --sync-username renzhiyuan --sync-password renzhiyuan
svn从:
[root@svnbak ~]# cd /usr/local/版本库/hooks/
[root@svnbak hooks]# cp pre-revprop-change.tmpl pre-revprop-change
[root@svnbak hooks]# chmod +x pre-revprop-change
vim pre-revprop-change
if [ "$ACTION" = "M" -a "$PROPNAME" = "svn:log" ]; then exit 0; fi
echo "Changing revision properties other than svn:log is prohibited" >&2
exit 0
初始化备份svn:(初始化之前主库不要存放东西)
[root@svn ~]# svnsync init svn://192.168.1.217/版本库 svn://192.168.1.221/版本库 --source-username renzhiyuan --source-password renzhiyuan --sync-username renzhiyuan --sync-password renzhiyuan
-----------------------------------------------------------------------
注意! 你的密码,对于认证域:
<svn://192.168.1.217:端口>
只能明文保存在磁盘上! 如果可能的话,请考虑配置你的系统,让 Subversion
可以保存加密后的密码。请参阅文档以获得详细信息。
你可以通过在“/root/.subversion/servers”中设置选项“store-plaintext-passwords”为“yes”或“no”,
来避免再次出现此警告。
-----------------------------------------------------------------------
保存未加密的密码(yes/no)?yes
svnsync: 目标版本库已经与“svn://192.168.1.221/版本库 ”同步
[root@svn ~]#
测试数据开始同步:
[root@svn ~]# svnsync sync --non-interactive svn://192.168.1.217/版本库 -source-username renzhiyuan --source-password renzhiyuan --sync-username renzhiyuan --sync-password renzhiyuan
传输文件数据.
已提交版本 1。
复制版本 1 的属性。
[root@svn ~]#
#################################################################################
自动同步配置:
主库:
[root@svn hooks]# pwd
/usr/local/版本库/hooks
[root@svn hooks]# cp post-commit.tmpl post-commit
[root@svn hooks]# chmod +x post-commit
[root@svn hooks]# vim post-commit
#REPOS="$1"
#REV="$2"
#mailer.py commit "$REPOS" "$REV" /path/to/mailer.conf
echo off
svnsync sync --non-interactive svn://192.168.1.217/版本库 --source-username renzhiyuan --source-password renzhiyuan --sync-username renzhiyuan --sync-password renzhiyuan
效果
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。