Linux 下搭建 SVN 服务

准备工作#

环境
centos7、yum 源

安装#

yum -y install subversion

配置#

搭建 svn 服务,配置用户#

创建一个新的 svn 项目
svnadmin create /home/www/svn
配置允许用户访问

cd /home/www/svn
ls
vi /conf/svnserve.conf

找到 anon-access, 将其设置为 none 并且将前面的 #去掉;找到 auth-access = write,password-db = passwd 前面的 #去掉;将 realm 前面的 #去掉,后面填入刚刚填写的 svn 项目的路径;退出保存::wq
vi authz
在最后一行加上

[/]
xxx = rw

给 xxx 用户配置读和写的操作,保存退出:wq
vi passwd
在 [users] 下加入
your user = your password
保存退出::wq
建立版本库目录

mkdir /home/www
svnserve -d -r /home/www

配置防火墙端口对外开发,svn 默认端口:3690

配置 hook,实现 svn 与 web 同步#

在 /home/www 下 checkout 一份代码下来
svn co svn://localhost/svn/project /home/www
修改权限为 www 用户
chown -R www:www /home/www/project

cd /home/www/svn/hooks
cp post-commit.tmpl post-commit

编辑 post-commit, 在文件最后一行加入以上内容

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

BASEPATH=/home/www/project
WEBPATH="$BASEPATH/"
export LANG=zh_CN.UTF-8
svn update $WEBPATH --username xxx --password xxx --no-auth-cache

增加脚本的可执行权限
chmod +x ./post-commit
最后重启 svn 服务

svn
本作品采用《CC 协议》,转载必须注明作者和本文链接
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。