CentOS SVN 环境搭建配置跟自动部署

一. 安装subversion并创建版本库

1.安装subversion

yum -y install  subversion

安装成功后查看版本号:
svnserve --version

2. 创建版本库

a.创建目录
mkdir /var/svn

b.创建版本库
svnadmin create /var/svn/repository

c.查看创建情况
cd /var/svn/repository
ll

二。配置基础信息

注意:所有的配置项都需要顶格,即前面不能预留空格,否则报错

cd /var/svn/readerstar/conf

1.配置SVN服务综合配置文件svnserve.conf

vim svnserve.conf

配置以下内容:

anon-access = read/none #匿名用户可读/不可读
auth-access = write #授权用户可写
password-db = passwd #使用哪个文件作为账号文件
authz-db = authz #使用哪个文件作为权限文件
realm = /home/svn/repository #认证空间名,版本库所在目录

2.配置用户组

vim authz

 [groups]

admin = hongcoo,hello

#admin用户组 hongcoo 用户

[weixin:/]
@admin = rw

#用户组admin对repository库有读写权限

3.配置用户名密码

`vim passwd`
[users]
hongcoo = hongcoo

4.启动svn

svnserve -d -r /var/svn/repository

检查服务是否启动成功
ps aux | grep svn

通过netstat可以看到SVN打开了3690端口
netstat -tnlp

设置成开机启动
systemctl enable svnserve.service

5.测试项目情况

svn co svn://localhost/repository

三。配置svn更新自动同步到web目录

1.先执行checkout

svn co svn://localhost/weiqing /home/www/repository --username libin --password libin123

2.建立post-commit文件

cd /var/svn/repository/hooks

cp /var/svn/readerstar/hooks/post-commit.tmpl /var/svn/readerstar/hooks/post-commit

vim /var/svn/readerstar/hooks/post-commit

配置内容:

REPOS="$1"
REV="$2"

export LANG=zh_CN.UTF-8

SVN_PATH=/usr/bin/svn
WEB_PATH=/home/www/weixin.com
LOG_PATH=/tmp/svn_update.log

$SVN_PATH update $WEB_PATH  --username libin  --password libin123  --no-auth-cache

修改post-commit用户为www目录用户
chown www:www post-commit

chmod +x post-commit

本作品采用《CC 协议》,转载必须注明作者和本文链接
高度自律,深度思考,以勤补拙
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 3
xianyunyehe

标题错了!

5年前 评论

@xianyunyehe 我说怎么看上去有点别扭 :joy:

5年前 评论

@xianyunyehe 已经纠正了,谢谢提醒~ :relaxed:

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!