centos7安装Subversion,


1、安装subversion

yum -y install subversion

 

2、查看安装位置

rpm -ql subversion

 

3、建立版本库

 

(1)建立版本库根目录

mkdir /var/svnrepos

 

(2)建立版本库

svnadmin create /var/svnrepos/lishuyang.com

 

svnadmin create /var/svnrepos/lishuyang.net

 

(3)配置版本库

任选一个版本库中的conf文件夹,将其中的authz、passwd文件复制到/var/svnrepos/下,修改authz文件,如下图

,修改passwd文件,如下图 ,然后配置每个版本库的svnserve.conf文件,配置如下:

anon-access = none# 表示禁止匿名用户访问,可选值none,read,write

auth-access = write# 表示授权用户拥有读写权限

password-db =/var/svnrepos/passwd#指定用户名口令文件,即passwd文件,可配绝对路径

authz-db = /var/svnrepos/authz# 指定权限配置文件,即authz文件,可配绝对路径

realm = /var/svnrepos/lishuyang.com# SVN项目的认证域,会在认证提示里显示。这个值每个版本库是不同的,另lishuyang.net版本库中的svnserve.conf配置情况也类似。

PS:这里配置项的每一行头部不可有空格,路径中也不可有空格

(4)配置防火墙

在vi /etc/sysconfig/iptables文件中添加一条如下规则

-A INPUT -p tcp -m state --state NEW -m tcp --dport 3690 -j ACCEPT

重启防火墙

systemctl restart iptables

(5)重启subversion

svnserve -d -r /var/svnrepos

(6)测试是否安装成功

在centos7中执行svn co svn://ip地址:3690/版本库名称(类似于这里的lishuyang.com),回车,输入在/var/svnrepos/passwd中配置的账号密码即可

4、配置钩子,让代码同步到开发目录

任选一版本库,复制/var/svnrepos/lishuyang.com/hooks/post-commit.tmpl为post-commit,在post-commit的尾部加入

 

export LANG=en_US.utf8

SVN_PATH=/usr/bin/svn //这里不用改

WEB_PATH=/home/www/lishuyang.com //web目录,如果你的不同,可以改

$SVN_PATH update $WEB_PATH --username 'lsy' --password 'lsyrepo' --no-auth-cache//这里的用户随便一个就好

 

然后把post-commit的所有者和所属组改为web目录的所有者和所属组

chown root:root post-commit

给post-commit加执行权限

chmod 755 post-commit

 

在web目录创建项目目录

mkdir /home/www/lishuyang.com

 

接着,重启svnserve

svnserve -d -r /var/svnrepos/

测试代码是否同步,提交完代码后,需要手动检出,这是第一次需要手动检出,以后可自动同步

svn co svn://本机ip/lishuyang.com /home/www/lishuyang.com

 

PS:参考https://www.cnblogs.com/-mrl/p/8980244.html

相关内容

    暂无相关文章