安装必要的rpm包 yum -y install subversion httpd mod_dav_svn 创建svn仓库 mkdir -p /data/svn svnadmin create /data/svn chown -R apache: /data/svn 进行selinux相关设置 chcon -R -t httpd_sys_content_t devops setsebool httpd_unified=1 注:setsebool httpd_unified=1这个设置可以解决这样的错误:Can’t open file ‘/var/lib/svn/devops/db/txn-current-lock’: Permission denied 目录用途说明: hooks目录:放置hook脚本文件的目录 locks目录:用来放置subversion的db锁文件和db_logs锁文件的目录,用来追踪存取文件库的客户端 format文件:是一个文本文件,里面只放了一个整数,表示当前文件库配置的版本号 conf目录:是这个仓库的配置文件(仓库的用户访问账号、权限等) 配置svn服务的配置文件svnserver.conf文件 vi /svn/project/conf/svnserve.conf [general] anon-access = none auth-access = write password-db = /svn/project/conf/passwd authz-db = /svn/project/conf/authz realm = My Test Repository #这是个提示信息 保存 添加两个访问用户及口令 vi /svn/project/conf/passwd

[users] xiaoran.shen = 123456 test1 = 123456 test2 = 123456 保存 注意:对用户配置文件的修改立即生效,不必重启svn服务。 配置新用户的授权文件 vi /svn/project/conf/authz [groups] admin = xiaoran.shen,test1 user = test2 [/] @admin = rw @user = r

保存

格式说明:

版本库目录格式:

[<版本库>:/项目/目录]

@<用户组名> = <权限>

<用户名> = <权限>

/ 表示对根目录(即/svn/project目录)下的所有子目录范围设置权限;

[/abc] 表示对资料库中abc项目设置权限;

创建一个admin组,组成员包括xiaoran.shen和test1

创建一个user组,成员只有test2;

admin组对目录有读写权限;

单个用户test2有读写权限;

=表示除了上面设置的权限用户组以外,其他所有用户都设置空权限,空权限表示禁止访问本目录,这很重要一定要加上。

注意:对权限配置文件的修改立即生效,不必重启svn。

启动svn服务

svnserve -d -r /svn/project/