https://my.oschina.net/u/206356/blog/287635
安装软件包
1
|
# yum install httpd
|
1
|
# yum install mod_dav_svn
|
1
|
# yum install subversion
|
2. 验证安装
1
|
# httpd -version
|
结果显示:
前往 /etc/httpd/modules/ 下,检查是否包含mod_dav_svn.so和mod_authz_svn.so,如果有,mod_dav_svn安装成功。
1
|
# svnserve --version
|
结果显示:
安装svn 成功。
3. 创建仓库
1
|
# mkdir /var/www/svn # cd /var/www/svn # svnadmin create repo1
|
4. 配置
/var/www/svn 目录下会有一个repo1的文件夹
修改所有者:
1
|
# chown -R apache:apache repo1
|
copy /var/www/svn/repo1/conf 下的 authz到 /var/www/svn下,并创建passwd文件
1
|
# cp /var/www/svn/repo1/conf/authz /var/www/svn/authz # cd /var/www/svn # vi passwd :wq保存退出
|
生成账号:
1
|
# htpasswd /var/www/svn/passwd user1
|
输入密码,生成user1账号
权限管理设置:
1
|
# vi /var/www/svn/authz
|
在[groups]下添加组,
[/] 相当于/var/www/svn这个目录,赋予权限给用户组
[repo1:/] 是指repo1库
[repo1:/desgin]是repo1下的desgin目录
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
[
groups
]
admin=user1
proj1_developer=user2,user3
proj2_develoer=user2,user4
proj1_desgin=user5,user6
[/]@admin=rw
[repo1:/]@proj1_developer=rw
[repo1:
/desgin
]@proj1_desgin=rw
[repo2:/]@proj2_developer=rw
|
将svn关联到apache上:
1
|
# vi /etc/httpd/conf.d/subversion.conf
|
在底部加上:
1
2
3
4
5
6
|
<Location
/repos
>
DAV svn
SVNParentPath
/var/www/svn
# # Limit write permission to list of valid users.# <LimitExcept GET PROPFIND OPTIONS REPORT># # Require SSL connection for password protection.# # SSLRequireSSL# AuthType Basic
AuthName
"Authorization SVN"
AuthzSVNAccessFile
/var/www/svn/authz
AuthUserFile
/var/www/svn/passwd
Require valid-user
# </LimitExcept></Location>
|
重启httpd
1
|
# service httpd restart
|
本文转自 luoguo 51CTO博客,原文链接:http://blog.51cto.com/luoguoling/1902044