一、首先安装一下svn
使用下面的命令执行就可以了
yum install subversion
安装完成之后查看一下 安装目录
whereis svn
查看安装版本
svn --version
如果不是最新的或者不是你喜欢的版本,可以去官方网站 https://tortoisesvn.net/downloads.html下载最新版进行升级
二、创建基础库
个人喜欢放在/home/www 里面
project是你的库名称哦!
svnadmin create /home/www/project
然后在你的/home/www/目录下就会多了一个project目录
三、修改基础库配置
cd /home/www/project/conf
ls
设置 svnserve.conf
general下的这几个配置需要开启一下,也就是去掉前面的注释## 不要留空格哦!
改成下列的
anon-access = read//为匿名用户有读权限 none=无权限
auth-access = write//为认证用户有write权限
password-db = passwd//密码认证文件路径
authz-db = authz//账号认证文件路径
realm = My First Repository //改成你的项目目录(提交的时候的提示)不太重要的 我的是 /home/www/project
设置passwd
[users]
username(自定义账号) = password (自定义密码)
可以设置多个,列子如下:
设置 authz
1、设置分组
[groups]
@g_admin = zhangsan,lisi(多个账号存在一个分组)
@g_admin = zhangsan(一个账号存在一个分组)
2、设置项目目录权限
project = 你的项目名称目录 如不想设置就设置如下 :[/]
[project/]
@g_admin = rw //g_admin 分组分配读写权限
zhangsan = rw //单个用户配置权限
- = //禁止其他访问
配置如下
[groups]
@g_admin = zhangsan,lisi
[project/]
@g_admin = rw
* =
四、完成后,基本的svn 配置已经完成
启动svn
svnserve -d -r /home/www
检查是否运行,如下图则是正常运行
ps -aux|grep svnserve
五、设置项目自动更新
1、先拉取已经设置好的svn库
cd 到你的项目目录 一般是使用 /www/wwwroot
然后执行下面命令拉取
svn co svn://ip/project/ ./project
2、 cd /home/www/project 你的库目录
回来看到一个 hooks目录
进入hooks目录 创建 post-commit 如果此文件不存在
3、配置 post-commit
#!/bin/sh
EPOS="$1"
REV="$2"
export LANG=en_US.UTF-8
SVN_PATH=/usr/bin/svn //svn安装目录 不知道的话 whereis svn 命令去查看
WEB_PATH=/www/wwwroot/project //项目根目录
SVN_USER=username //账号
SVN_PASS=password //密码
LOG_PATH=/tmp/svn.log //打印日志目录 你随意定义
echo `date "+%Y-%m-%d %H:%M:%S"` >> $LOG_PATH
echo `whoami`,$REPOS,$REV >> $LOG_PATH
$SVN_PATH update $WEB_PATH --username $SVN_USER --password $SVN_PASS --no-auth-cache >> $LOG_PATH
4、设置目录权限
chown www:www /home/www/project/hooks/post-commit
chmod -x /home/www/project/hooks/post-commit
5、然后就可以测试一下了!
实在不行的话重启一下服务哦!
svnserve -d -r /home/www
如果服务已经运行,可以关闭进程,启动
ps -aux|grep svnserve
kill -9 ID号
svnserve -d -r /home/www