千家信息网

svn实时同步案例!

发表于:2025-01-21 作者:千家信息网编辑
千家信息网最后更新 2025年01月21日,svnsync应用场景:1、减缓单个svn版本库的压力2、更合理分配资源权限svn实时同步配置:(安全考虑,svn端口和版本库用中文代替)svn主从搭建:环境:192.168.1.221 主
千家信息网最后更新 2025年01月21日svn实时同步案例!

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-changevim pre-revprop-changeif [ "$ACTION" = "M" -a "$PROPNAME" = "svn:log" ]; then exit 0; fiecho "Changing revision properties other than svn:log is prohibited" >&2exit 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 renzhiyuansvn从:[root@svnbak ~]# cd /usr/local/版本库/hooks/[root@svnbak hooks]# cp pre-revprop-change.tmpl pre-revprop-change[root@svnbak hooks]# chmod +x pre-revprop-changevim pre-revprop-changeif [ "$ACTION" = "M" -a "$PROPNAME" = "svn:log" ]; then exit 0; fiecho "Changing revision properties other than svn:log is prohibited" >&2exit 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-----------------------------------------------------------------------注意!  你的密码,对于认证域:    只能明文保存在磁盘上!  如果可能的话,请考虑配置你的系统,让 Subversion可以保存加密后的密码。请参阅文档以获得详细信息。你可以通过在"/root/.subversion/servers"中设置选项"store-plaintext-passwords"为"yes"或"no",来避免再次出现此警告。-----------------------------------------------------------------------保存未加密的密码(yes/no)?yessvnsync: 目标版本库已经与"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.confecho off svnsync sync --non-interactive svn://192.168.1.217/版本库   --source-username renzhiyuan --source-password renzhiyuan --sync-username renzhiyuan --sync-password renzhiyuan

效果


0