svn服务器 备份,迁移,部署方案

这次做业务迁移,要从一个云厂商迁移到某云厂商,之前每天到全备svn排到用场了,需要搭建一个全新到svn服务并要做迁移,并实现我们开发机到时时代码同步

一、svn备份有很多种,优劣都不同,百度可查,我采用到是dump每天凌晨会执行脚本备份数据

svnadmin dump /path/svn >/path/backup_svn/bak.svn 

二、(新)svn服务器搭建配置,配置文件列出

yum install subversion -y  #yum安装
mkdir -p /inn
svnadmin create /inn/svn/ #创建版本库
svnserve -d -r /inn/svn/ #指定目录启动svnserver服务


//会生成相关配置文件
ll /inn/svn/conf

-rw-r--r-- 1 root root 1833 May  2 14:47 authz   #指定用户组,用户权限,目录信息等
-rw-r--r-- 1 root root  570 May  2 14:54 passwd  #创建等用户以及密码
-rw-r--r-- 1 root root 2421 Apr 26 11:04 svnserve.conf #全局配置文件,指定相关文件指定等目录
[root@yunwei-169 conf]# cat authz 
[groups]
web = aaa,bbb
testing = ceshi
[/]
@web = rw
@testing = r
[root@yunwei-169 conf]# 


#web组有用户 aaa.bbb 
#web用户对目录有读写权限
#测试组对相关目录只读
[root@yunwei-169 conf]# cat passwd
[users]
aaa = 123123
bbb = 321321
ceshi = 123333
[root@yunwei-169 conf]# 
[root@yunwei-169 conf]# cat svnserve.conf
[general]
anon-access = none
auth-access = write
password-db = /inn/svn/conf/passwd
authz-db = /inn/svn/conf/authz
realm = beizhu
[root@yunwei-169 conf]# 

三、拷贝备份文件到本服务器  可以使用scp ftp等方式传输

四、恢复拷贝到文件

 svnadmin load /inn/svn < bak.svn

 五、利用svn钩子(hooks)实现测试机代码到时时同步

svn安装目录下修改配置文件即可实现,不需要安装插件等。

[root@yunwei-169 svn]# cd hooks/
[root@yunwei-169 hooks]# ll
total 52
-rw-r--r-- 1 root root 1188 May  8 18:22 1
-rw-r--r-- 1 root root  353 May  9 11:52 post-commit.log
-rw-r--r-- 1 root root  205 May  9 11:52 post-commit_project.log
-rw-r--r-- 1 root root 1977 Apr 26 11:00 post-commit.tmpl
-rw-r--r-- 1 root root 1638 Apr 26 11:00 post-lock.tmpl
-rw-r--r-- 1 root root 2289 Apr 26 11:00 post-revprop-change.tmpl
-rw-r--r-- 1 root root 1567 Apr 26 11:00 post-unlock.tmpl
-rw-r--r-- 1 root root 3426 Apr 26 11:00 pre-commit.tmpl
-rw-r--r-- 1 root root 2410 Apr 26 11:00 pre-lock.tmpl
-rw-r--r-- 1 root root 2786 Apr 26 11:00 pre-revprop-change.tmpl
-rw-r--r-- 1 root root 2100 Apr 26 11:00 pre-unlock.tmpl
-rw-r--r-- 1 root root 2780 Apr 26 11:00 start-commit.tmpl
[root@yunwei-169 hooks]# cp post-commit.tmpl  post-commit
[root@yunwei-169 hooks]#  chmod 777 post-commit
[root@yunwei-169 hooks]# cat post-commit  #将内容清空
#!/bin/sh
echo "hello" >> /inn/svn/hooks/post-commit.log
REPOS="$1"
REV="$2"


export LANG=zh_CN.UTF-8

/usr/bin/svn update /inn/www/hotel >> /inn/svn/hooks/post-commit.log


/usr/bin/svn update /inn/www/project >> /inn/svn/hooks/post-commit_project.log

echo `date`,`whoami`,$REPOS,$REV
[root@yunwei-169 hooks]# 

  

 

如何解决svn Authorization failed错误

权限问题或者目录问题,排查上面到三个配置文件。。。

  

  

  

 

转载于:https://www.cnblogs.com/liuquan/p/8981167.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值