在Cent OS上配置SVN服务及版本库权限设置
一、安装配置SVN
#安装SVN
yum -y install subversion#测试SVN是否已经安装好
svn
#创建svn版本库文件夹
mkdir /var/subversion/
# 编辑自系统启动文件
vi /etc/rc.local
svnserve -d -r /var/subversion/
启动svn服务
svnserve -d -r /var/subversion/
=== 创建版本库 ===
#创建新版本库test
svnadmin create /var/subversion/test
==================
== 配置版本库权限 ==
# 进入版本库配置文件目录
cd/var/subversion/test/conf
编辑基本权限文件
vi svnserve.conf
输入:%d a清空文件内容
再按i进入编辑模式,输入
[general]
password-db = passwd
anon-access = none
auth-access = write
authz-db = authz
配置用户和密码
vi passwd
[users]
用户名 = 密码
例如:
[users]
peter = 8888888
配置用户访问权限
vi authz
按照下列模板输入分组信息
[groups]
组名 = 用户名,用户名...
举例
[groups]
manager = echo
developer = colt, echo
client = peter
版本库路径及权限设置
格式
[版本库名称:版本库内部文件夹路径]
@组名称 = 读写权限(r读,w写,rw读写)
* = r (全局读写权限)
举例,版本库根目录
[test:/]
@manager = rw
@developer = rw
* = r
举例,用户反馈目录
[test:/feedback]
@client = rw
* = r
编辑完后文件的所有内容应该如下:
[groups]
manager = echo
developer = colt, echo
client = peter
[test:/]
@manager = rw
@developer = rw
* = r
[test:/feedback]
@client = rw
* = r
编辑完毕后按esc输入:wq保存并退出编辑器
客户端checkout svn版本库地址
svn://服务器IP地址:3690/版本库名
例如
svn://192.168.1.1:3690/test
二、SVN同步web服务器
cd /var/subversion/test/conf
cp post-commit.tmpl post-commit
vi post-commit
输入以下内容
REPOS="$1"
REV="$2"
SVN=/usr/bin/svn
WWW=/www/web/项目名
export LANG="zh_CN.UTF-8"
$SVN update $WWW --username **** --password ****
SVN是svn安装的目录 WWW为web目录 ****需要填写svn的用户名和密码
到web目录下 svn co file:///www/svndata/repos/项目名 导出已经存在版本库中的项目