CentOS6.9快速安装配置svn

环境介绍:

操作系统:CentOS release 6.9 (Final)
192.168.65.130 (svn服务器)
192.168.65.129 (svn客户端)

一、svn安装检查(在两台上都执行)

if [ ! -f /usr/bin/svn ]; then
yum -y install subversion >/dev/null
echo "svn has been installed." >/dev/null
/usr/bin/svn --version|head -|awk -F" " '{print $3}'
fi

二、创建版本库文件夹(仅在130上操作)

mkdir -p /data/svn/sinsvn
#创建版本库
svnadmin create /data/svn/sinsvn
mkdir -p /data/www/sinsvn

三、主要操作

#导入所需管理的项目到版本库repository中
svn import /data/www/sinsvn/ file:///data/svn/sinsvn -m "svn first test"
#检查是否导入成功
svn list --verbose file:///data/svn/sinsvn
#修改版本库的配置文件
# vim /data/svn/sinsvn/conf/svnserve.conf
cat >/data/svn/sinsvn/conf/svnserve.conf <<"EOF"
[general]
anon-access = none
auth-access = write
password-db = /data/svn/passwd
authz-db = /data/svn/authz
realm =sinsvn
EOF cp /data/svn/sinsvn/conf/passwd /data/svn
cp /data/svn/sinsvn/conf/authz /data/svn #修改允许访问版本库的用户文件
# vim /data/svn/passwd
cat >/data/svn/passwd <<"EOF"
[users]
harry = harry
sin = sin
EOF # vim /data/svn/authz
cat >/data/svn/authz <<"EOF"
[groups]
myteam = harry,sin [/]
harry = rw [sinsvn:/]
@myteam = rw [secsvn:/www]
@myteam =r
sin= rw [sincms:/]
sin= rw
harry=
EOF # 启动 svn 服务
svnserve -d -r /data/svn/ # 查看
ps -ef|grep svnserve|grep -v 'grep'
netstat -anltp|grep

四、测试

# 测试,在另外一台机器上操作(),目的是效果更为明显些
# 、mkdir -p /data/www
mkdir -p /data/www
cd /data/www/
# 、svn co 代码
svn co svn://192.168.65.130/sinsvn --username=harry --password=harry # 、添加branches,tags,trunk目录
cd sinsvn/
mkdir branches
mkdir tags
mkdir trunk svn add branches trunk tags
svn ci -m 'create branches trunk tags dir' # 、在trunk中添加测试文件,并提交到版本库
cd trunk
touch index.php
mkdir class
touch class/conn.php svn add index.php
svn add class/ ...... svn ci -m 'test file' svn delete index.php class class/ index.php
svn ci -m 'delete files' mkdir webgame
svn add webgame/
svn ci -m 'add webgame dir' # 追加操作
cd webgame
cp /tmp/VMwareTools-10.2.-.tar.gz .
cp /tmp/yum.log .
svn add *
svn ci -m 'add VMwareTools yum.log for test' ############### 这里假设130的机器上有个web项目
mkdir -p /data/webdir
cd /data/webdir
svn co svn://192.168.65.130/sinsvn/trunk/webgame --username=harry --password=harry # 追加操作
cd /data/webdir/webgame/
svn update
ll # 可以查看到更新后的结果

五、脚本定制更新

# 定时更新脚本(针对整个目录自动更新的脚本,被动模式)
cat >/root/svnauto_update.sh<<"EOF"
cd /data/webdir/webgame/
svn update &>>/tmp/svnauto_update.log
EOF chmod +x /root/svnauto_update.sh
chmod +x /etc/crontab
/etc/init.d/crond restart
# 添加至crontab计划任务中 cat >>/var/spool/cron/root<<"EOF" # svnauto_update.sh
* - * * * /bin/sh /root/svnauto_update.sh
EOF # 自动更新脚本(针对版本号触发式更新)
#svn 目录:/data/svn/sinsvn
#站点目录:/data/webdir/webgame #实现:
#.找到svn项目的hooks目录,这里是/data/svn/sinsvn/hooks。目录中默认会几个对应操作的钩子模板,我们需要创建一个post-commit的文件。
find /data/svn/sinsvn/ -name hooks #.新建post-commit,内容如下
cat >/data/svn/sinsvn/hooks/post-commit<<"EOF"
#!/bin/bash
REPOS="$1"
REV="$2"
export LANG=zh_CN.UTF-
echo "Code Deployed at "$" Committed revision "$" ; `date "+%Y-%m-%d %H:%M:%S"`" >> /tmp/post-commit.log
/usr/bin/svn update --username harry --password harry /data/webdir/webgame >> /tmp/post-commit.log
EOF chmod +x /data/svn/sinsvn/hooks/post-commit

CentOS6.9快速安装配置svn的更多相关文章

  1. CentOS6.3下安装配置SVN(Subversion)

    #检查是否安装了低版本的SVN [root@localhost ~]# rpm -qa subversion subversion--.el6.x86_64 #卸载旧版本SVN [root@local ...

  2. CentOs 6.6 安装配置 SVN

    ① 挂载光盘 mount /dev/cdrom /mnt/cdrom ② yum 安装 svn yum -y install subversion ③ 创建svn 版本库根目录 mkdir -p /w ...

  3. 【转载】CentOS6.5_X64下安装配置MongoDB数据库

    [转载]CentOS6.5_X64下安装配置MongoDB数据库 2014-05-16 10:07:09|  分类: 默认分类|举报|字号 订阅      下载LOFTER客户端 本文转载自zhm&l ...

  4. CentOS6.5下安装配置MySQL

    CentOS6.5下安装配置MySQL,配置方法如下: 安装mysql数据库:# yum install -y mysql-server mysql mysql-deve 查看mysql-server ...

  5. Apache 2.4.7在CentOS6.4中安装配置反向代理解决单外网IP对应多个内网主机的方法实践

    欢迎转载,转载时请保留全文及出处. Apache 2.4.7在CentOS6.4中安装配置反向代理解决单外网IP对应多个内网主机的方法实践 Apache安装 下载源程序(http://httpd.ap ...

  6. linux下安装配置svn服务器

    linux下安装配置svn服务器 1. svn服务器安装 将subversion-1.4.0.tar.gz和subversion-deps-1.4.0.tar.gz传到服务器. tar xfvz su ...

  7. 【Ubuntu 16.04.2_64】安装配置SVN

    [Ubuntu 16.04.2_64]安装配置SVN 转载:https://www.cnblogs.com/yangchongxing/p/10190549.html 检查是否已安装svn # svn ...

  8. 阿里云服务器centos下安装配置svn服务器

      阿里云服务器centos下安装配置svn服务器 1.安装svn服务器端yum install subversion      从镜像下载安装svn服务器端中间会提示是否ok,输入y,确认安装成功提 ...

  9. CentOS-6.3安装配置SVN

    安装说明 系统环境:CentOS-6.3 安装方式:yum install (源码安装容易产生版本兼容的问题) 安装软件:系统自动下载SVN软件 检查已安装版本 #检查是否安装了低版本的SVN [ro ...

随机推荐

  1. GLSL 变量属性

    1. attribute变量为这个attribute变量指定一个位置(用无符号值表示):glBindAttribLocation利用这个“位置”来指定需要传给shader里的attribue变量的数据 ...

  2. 第四十一天 socker server和 event

    今日内容 1.基于TCP的socketserver 2.基于UDP的socketserver 3.event 一.TCP的socketserver #服务器 import socketserver f ...

  3. BZOJ 4196 软件包管理器

    树链剖分 建树之后,安装软件就是让跟节点到安装的节点路径所有点权+1,卸载软件就是让一个节点和他的子数-1 要求变化数量的话直接求和相减就行啦(绝对值) 注意一点,一开始的lazyatag应该是-1, ...

  4. 【CTSC2017】【BZOJ4903】吉夫特 卢卡斯定理 DP

    题目描述 给你一个长度为\(n\)的数列\(a\),求有多少个长度\(\geq 2\)的不上升子序列\(a_{b_1},a_{b_2},\ldots,a_{b_k}\)满足 \[ \prod_{i=2 ...

  5. ramdom 中的 seed 的使用

    实例 1 import ramdom # random.seed(10) # 未加 seed 的时候 for i in range(5): print(random.random()) # 每次输出结 ...

  6. 【BZOJ2576】[JSOI2011]序的计数 (动态规划)

    [BZOJ2576][JSOI2011]序的计数 (动态规划) 题面 BZOJ 题解 首先构建一个新的虚拟节点连接所有目标节点,强行将其作为第一个被访问的节点,这样子就解决了图不连通的问题. 除了目标 ...

  7. 超详解的LNMP搭建并优化

    环境为Centos7 nginx1.14 mysql5.7 php7一,安装Nginx (yum装,快速) yum install nginx二,优化nginx (方便后期工作,如果纯为测试的话,不用 ...

  8. HR_Jumping on the Clouds

    1.没有考虑i+2越界的问题 2.没有考虑结尾三个零导致 -5 3.没有考虑len(c)<2 导致 -5 #!/bin/python3 import math import os import ...

  9. [NOI2016]优秀的拆分&&BZOJ2119股市的预测

    [NOI2016]优秀的拆分 https://www.lydsy.com/JudgeOnline/problem.php?id=4650 题解 如果我们能够统计出一个数组a,一个数组b,a[i]表示以 ...

  10. js 触摸的Event--获取触摸位置

    继上一篇js原生拖拽之后,现在又来写一下移动端touch列表,获取触摸位置.pc端的event事件,鼠标的位置信息在上一篇,点此进入上一篇. touch有3个事件:touchstart,touchmo ...