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错误
权限问题或者目录问题,排查上面到三个配置文件。。。
svn服务器 备份,迁移,部署方案的更多相关文章
- Svn服务器备份迁移小结
注:svn备份千万不要采用打包压缩,然后解压文件的方式. 备份和还原之前先要关掉svn服务器. svn备份一般采用三种方式: 1)svnadmin dump 2)svnadmin hotcopy 3) ...
- CENTOS 搭建SVN服务器(附自动部署到远程WEB)
安装subversion服务端 # 安装 yum install -y subversion # 测试是否安装成功 如果显示了版本信息则表示安装成功 svnserve --version;sleep ...
- Windows Server - SVN 服务器搭建与项目配置、客户端安装与配置
本教程以Windows Server 2012 R12 为例搭建SVN服务器,安装部署完成后,客户端可通过SVN客户端访问SVN服务器上的项目,也可以访问网上其他SVN服务器上的项目. 一.首先准备三 ...
- centos7 搭建svn服务器&客户端的访问&备份迁移
当今用于版本控制的软件程序主要的有svn和git,其它软件咱不熟悉,今天记录下搭建svn服务器和svn客户端使用: 使用环境:虚拟机为centos7系统,svn服务器安装在centos7系统平台上,s ...
- Linux之svn数据备份、还原及迁移
前言 因管理需求现要将svn数据进行备份,作为运维小哥的我在收到指令后进行了相关操作.当然,领导告知的是要备份,但作为一个有思想的运维,我考虑到的是自己要干的不仅仅是备份操作,还要确保在备份后数据还原 ...
- svn服务器迁移(windows下)
废话不多说,直接上步骤: 服务端: 1.创建一个备份文件夹 如:D:\svn_bak 2.进入cmd,cd命令到你的svn服务器安装目录的bin文件下,本人的安装目录在 D:\Program File ...
- svn服务器搭建与迁移
2016-11-21更新: 今天被svn的钩子搞了半天,网上找解决方法都无效,下午被我试出来了,特此记录. 在svn的钩子中可以使用update来更新配置文件,比如ansible的,puppet的,具 ...
- Linux下svn服务器的安装与配置-备份-恢复-计划任务
简介:SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS.CVS,它采用了分支管理系统,它的设计目标就是取代CVS.互联网上很多版本控制服务已从CVS迁移到Subvers ...
- SVN仓库备份和迁移
SVN仓库备份和迁移 author: yunqimg(ccxtcxx0) 前言 本文主要是讲 SVN 仓库的全量备份和增量备份,只包括基本操作. 如有疑问请参考 References. 仓库备份 sv ...
随机推荐
- 【2018 ICPC亚洲区域赛南京站 A】Adrien and Austin(博弈)
题意: 有一排n个石子(注意n可以为0),每次可以取1~K个连续的石子,Adrien先手,Austin后手,若谁不能取则谁输. 思路: (1) n为0时的情况进行特判,后手必胜. (2) 当k=1时, ...
- window系统mysql无法输入和无法显示中文的处理配置
第一步:使用记事本打开mysql安装目录下的"my.ini”文件. # MySQL client library initialization. [client] port= [mysql] ...
- Android 微信页面刷新问题
今天测试妹纸提了个bug,Android手机用微信打开测试页面,刷新功能无效.因为开发时懒,只验证了Ios手机无异常,没有注意打安卓这个问题. 我是直接用的window.location.reload ...
- 帝国CMS如何禁止内容关键字替换ALT和title中的关键词为链接
很多帝国cms用户喜欢使用关键字替换来实现文章自动内链的方法. 为什么要用关键词替换功能呢?这关系到站内优化,下面直接进入正题. 解决办法:打开e/class/functions.php 查找 '/' ...
- git改密码出现授权问题
git修改密码后显示Authentication failed for …… ,意思就是电脑修改密码后导致和git账户密码不匹配 解决方法:
- Bioinfomatics dataset
##Genomic sequence variation ###1000 Genomes Projecthttp://www.1000genomes.org/Data collection and a ...
- VR中为什么需要把游戏音频放在聚光灯里?
VR中为什么需要把游戏音频放在聚光灯里? 本文章由cartzhang编写,转载请注明出处. 所有权利保留. 文章链接:http://blog.csdn.net/cartzhang/article/de ...
- Python:numpy中的tile函数
在学习机器学习实教程时,实现KNN算法的代码中用到了numpy的tile函数,因此对该函数进行了一番学习: tile函数位于python模块 numpy.lib.shape_base中,他的功能是重复 ...
- js实现无限级分类
let arr = [ {id:1,name:"php",pid:0}, {id:2,name:"php基础",pid:1}, {id:3,name:" ...
- 只需两步,rails支持CSV格式导出
一.Controller最上方添加 require 'csv' 二.方法里面添加 format.csv do csv_string = CSV.generate do |csv| csv <&l ...