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. 【python练习题】程序4

    # 题目:输入某年某月某日,判断这一天是这一年的第几天? import time year = input('输入年份: \n') month = input('输入月份: \n') day = in ...

  2. CML\LVDS

    LVDS和CML电平应用区别 https://wenku.baidu.com/view/6bb0066f011ca300a6c3908c.html

  3. c++ 怎么输出保留2位小数的浮点数

    //添加头文件 #include<iomanip> //定义变量 folat a=9.1; cout<<setiosflags(ios::fixed)<<setpr ...

  4. .net core 2.0 配置Session

    本文章为原创文章,转载请注明出处 配置Session 在Startup.cs文件的ConfigureServices方法中添加session services.AddSession(); 在Start ...

  5. 3、springframe常用注解

    1.@controller 控制器(注入服务) 2.@service 服务(注入dao) 3.@repository dao(实现dao访问) 4.@component (把普通pojo实例化到spr ...

  6. Docker基本使用(二)

    Docker 客户端 我们可以直接输入 docker 命令来查看到 Docker 客户端的所有命令选项. 可以通过命令 docker command --help 更深入的了解指定的 Docker 命 ...

  7. 【CF618F】Double Knapsack(构造)

    [CF618F]Double Knapsack(构造) 题面 洛谷 Codeforces 题解 很妙的一道题. 发现找两个数集很不爽,我们强制加强限制,我们来找两个区间,使得他们的区间和相等. 把区间 ...

  8. LOJ#6285. 数列分块入门 9

    有点难..... 要求区间众数,所以我可以先把区间分块,然后我预处理出从第 i 块到第 j 块的众数,用dp[i][j]记录下来. 因为需要知道众数的num值, 所以我可以用一个vector来保存每个 ...

  9. PHP基础学习----字符串操作

    1.单引号和双引号的区别 在php中,字符串的定义可以使用英文单引号'',也可以使用英文双引号“”: <?php $str = 'hello'; echo "str is $str&q ...

  10. 源码分析-AutoCloseable

    AutoCloseable 该接口用于try-with-resources语法糖提供支持,用于自动关闭资源作用 类型:接口 方法:close(); 详解: close():用于自动关闭资源的时候需要进 ...