【Linux】CentOS 7.6 搭建SVN环境并设置自动提交

一.准备工作

1.完成环境搭建,参考上一篇:CentOS 7.6 用宝塔面板安装/配置PHP环境
2.服务器开启3690端口;

二.安装SVN

1.下载svn
yum -y install subversion

【Linux】CentOS 7.6 搭建SVN环境并设置自动提交_第1张图片

2.创建仓库(自定义路径)
mkdir -p /extendData/svnData/

【Linux】CentOS 7.6 搭建SVN环境并设置自动提交_第2张图片

3.创建项目版本库(例:test)
svnadmin create /extendData/svnData/test

【Linux】CentOS 7.6 搭建SVN环境并设置自动提交_第3张图片

4.创建新账户

进入conf目录,编辑passwd文件

cd /extendData/svnData/test/conf/
vi passwd

在[users]下添加“用户名 = 密码”
【Linux】CentOS 7.6 搭建SVN环境并设置自动提交_第4张图片

5.配置用户权限
vi authz

在[groups]下添加

[/]
用户名 = rw
* = 

说明
用户名 = rw:该用户可读写
r:只读
= 空白:不可访问

【Linux】CentOS 7.6 搭建SVN环境并设置自动提交_第5张图片

6.修改SVN配置
vi svnserve.conf

在[general]下添加:

anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = /extendData/svnData

anon-access = none 不允许匿名访问
realm = /extendData/svnData 版本库所在目录

【Linux】CentOS 7.6 搭建SVN环境并设置自动提交_第6张图片

7.启动SVN
svnserve -d -r /extendData/svnData/

本地访问“svn://你的IP/test”进行测试
【Linux】CentOS 7.6 搭建SVN环境并设置自动提交_第7张图片
若无法访问可查看云服务器和宝塔面板是否开启3690端口
【Linux】CentOS 7.6 搭建SVN环境并设置自动提交_第8张图片
【Linux】CentOS 7.6 搭建SVN环境并设置自动提交_第9张图片

8.设置自动启动SVN

打开rc.local文件

vi /etc/rc.d/rc.local

在末尾添加脚本

/usr/bin/svnserve -d -r /extendData/svnData/

【Linux】CentOS 7.6 搭建SVN环境并设置自动提交_第10张图片

三.配置自动提交(利用post-commit钩子)

1.编辑post-commit

进入hooks文件夹

cd /extendData/svnData/test/hooks/

复制一份post-commit

cp -f post-commit.tmpl post-commit

打开文件

vi post-commit

清空内容写入如下内容并保存

#!/bin/sh
export LANG=zh_CN.UTF-8
/usr/bin/svn update --username user --password password /extendData/www/test

说明
svn 命令路径 + update --username 用户名 --password 密码 项目目录

修改权限,否则会报错

chmod +x post-commit
2.新建项目目录(位置自选)
mkdir -p /extendData/www/test

checkout

svn co svn://127.0.0.1/test /extendData/www/test

至此结束,本地正常检出、提交即可,多个项目则重复如上某些操作。

你可能感兴趣的:(Linux,服务器)