系统环境:CentOS6.6 内核:2.6.32-504.el6.x86_64
1.CentOS服务器端安装
yum install subversion -y
安装完毕后,检查subversion的版本即验证安装成功.
[root@testandqa0101 svn]# svnserve --version
svnserve, version 1.6.11 (r934486)
compiled Aug 17 2015, 08:37:43
Copyright (C) 2000-2009 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).
The following repository back-end (FS) modules are available:
* fs_base : Module for working with a Berkeley DB repository.
* fs_fs : Module for working with a plain file (FSFS) repository.
Cyrus SASL authentication is available.
3.代码库创建
SVN软件安装完成后还需要建立SVN库
mkdir -p /var/svn/repo
svnadmin create /var/svn/repo
执行上面的命令后,自动建立repo库,查看/var/svn/repo 文件夹发现包含了conf, db,format,hooks, locks, README.txt等文件,说明一个SVN库已经建立。
目录用途说明:
hooks目录:放置hook脚本文件的目录
locks目录:用来放置subversion的db锁文件和db_logs锁文件的目录,用来追踪存取文件库的客户端
format文件:是一个文本文件,里面只放了一个整数,表示当前文件库配置的版本号
conf目录:是这个仓库的配置文件(仓库的用户访问账号、权限等)
4.配置新用户的授权文件
cd /var/svn/repo/conf
vim authz
目的是设置哪些用户可以访问哪些目录,向authz文件添加加以下内容:
[groups]下面加入:
admin = hujh,liy,lusq
user = test01
[/]
@admin = rw
@user = r
* =
保存
格式说明:
版本库目录格式:
[<版本库>:/项目/目录]
@<用户组名> = <权限>
<用户名> = <权限>
/ 表示对根目录(即/var/svn/repo目录)下的所有子目录范围设置权限;
[/abc] 表示对资料库中abc项目设置权限;
创建一个admin组,组成员包括hujh,liy和lusq
创建一个user组,成员只有test01;
admin组对目录有读写权限;
单个用户test01只有读权限;
*=表示除了上面设置的权限用户组以外,其他所有用户都设置空权限,空权限表示禁止访问本目录,这很重要一定要加上。
注意:对权限配置文件的修改立即生效,不必重启svn。
5.配置用户和访问密码:
vim passwd
[users]下加入:
hujh = hujhxxx
lusq = lusqxxx
liy = liyxxx
test01 = test01xxx
6.配置svn服务的配置文件svnserver.conf文件
[general]下加入:
#匿名访问的权限,可以是read,write,none,默认为read
anon-access=none
#使授权用户有写权限
auth-access=write
#密码数据库的路径
password-db=/var/svn/repo/conf/
passwd
#访问控制文件
authz-db=/var/svn/repo/conf/authz
#认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字
realm=
/var/svn/repo
7.启动SVN服务:
svnserve -d -r /var/svn/repo
默认svn服务器端口是3690。
如果需要重启svn服务,则:
[root@testandqa0101 svn]# ps -ef | grep svn | grep -v grepkill 47425
svnserve -d -r /var/svn/repo,然后ps -ef | grep svn | grep -v grep 检查进程是否存在。
打开TortoiseSVN Repository Browser工具(工具下载地址:http://sourceforge.net/projects/tortoisesvn/)
在URL中输入:
svn://192.168.1.200回车,提示输入用户名和口令
svn co svn://192.168.1.200