博客列表 >LINUX下SVN安装,配置,web目录同步

LINUX下SVN安装,配置,web目录同步

志方网络
志方网络原创
2018年04月16日 00:12:40918浏览

一、 安装subversion

1. 首先查看SVN是否已经安装过

rpm -qa | grep subversion

如果输出类似如下结果,则说明已经安装:subversion-1.6.11-7.el6.x86_64

2. 通过yum安装SVN

yum -y install subversion

3. 查看安装的SVN版本

svn --version

二、 建立代码仓库

第一步得创建所有项目的仓库中心,如下命令:

mkdir /opt/svn/

现在假定我们有一个项目叫 imobile ,现在我们为这个项目在仓库中心中分配一个仓库。如下命令:

svnadmin create /opt/svn/imobile/

进入imobile目录如下 /opt/svn/imobile/

目录说明
conf:配置文件
db:存储数据
hooks:脚本程序,SVN提交上来的文件检验等操作

三、 修改配置文件

1. 进入 svntest 项目仓库配置目录中

cd /opt/svn/imobile/conf/

2. 修改svnserve.conf文件

vim svnserve.conf

找到以下的内容,并在行首注释符号#删掉。

[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz

注,配置文件前不能出现空格,否则会出现错误

3. 为 svntest 项目增加svn用户,并且赋予权限值:

vim authz

在文件中添加如下代码:

[imobile:/]
imobile_001=rw

rw表示读写操作权限

关于方框号里面的写法有以下几种:

  • [/],表示根目录及以下,根目录是svnserve启动时指定的,我们指定为/opt/svn,

  • [/]就是表示对全部版本库设置权限。

  • [imobile:/] 表示对版本库svntest设置权限

  • [imobile:/abc] 表示对版本库svntest中的abc项目设置权限

  • [imobile:/abc/aaa] 表示对版本库svntest中的abc项目的aaa目录设置权限

4. 给用户分配密码,执行如下命令:

vim passwd
[users]
# harry=harryssecret
# sarry=sarryssecret
imobile_001=123456

四、启动svn服务和测试

1. 启动svn服务,并指定 svn 的根目录:

svnserve -d -r /opt/svn/

2. 查看svn服务是否正常启动,执行如下命令:

netstat -tunlp | grep svn

顺便提一下,svn的默认端口是3690。

3. 重启SVN服务:

ps -ef|grep svn #查看进程,找到svn进程
kill -9 进程id #杀死主进程
svnserve -d -r /opt/svn/ #启动svn,-d表示svn作为服务程序在后台运行,-r是表示将SVN目录当做根目录

4. 在windows系统上测试是否成功:

5. 开机自启动SVN:

vim /etc/rc.local
#加入下面这段命令
svnserve -d -r /opt/svn/

五、 SVN提交文件自动更新到nginx的WEB目录

1. 进入WEB根目录:

cd /web/www

2. 创建SVN仓库副本:

svn co svn://localhost/imobile --username imobile_001 --password 123456

3. 设置svn更新后自动更新nginx的读取目录:

cd /opt/svn/imobile/hooks/
vim post-commit
#!/bin/sh
export LC_CTYPE=zh_CN.UTF-8
/usr/bin/svn up /web/www/imobile --username 'imobile_001' --password '123456'

更改文件权限为可执行

chmod 777 post-commit

4. 测试是否成功:


本文参考网址:https://blog.csdn.net/ai_zxc/article/details/50787754

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议