Linux SVN HTTP访问服务部署
1.查询是否安装subversion【防火墙,selinx关闭】
[root@localhost ~]# rpm -qa | grep subversion subversion-1.6.11-15.el6_7.x86_64 [root@localhost ~]# yum update subversion -y
2.安装apache支持svn
yum -y install httpd httpd-devel mod_dav_svn mod_ssl mkdir /data/svn/conf -p mkdir /data/svn/data -p svnadmin create /data/svn/data/
3.创建认证用户及密码文件
htpasswd -cm /data/svn/conf/passwd admin htpasswd -m /data/svn/conf/passwd dev01 vim /data/svn/conf/authz # 用户组 [groups] admin = admin dev = dev01,dev02 test = test01 # 根目录 [/] @admin = rw * = r [ph:/] @admin = rw @dev = rw @test = r ============================================== [groups] admin = admin,pinhui02 dev = pinhui01,pinhui02,pinhui03,pinhui04,pinhui05,pinhui06,pinhui12,pinhui13,pinhui14 sup = pinhui10,pinhui11 ops = ios = pinhui09,pinhui12 android = pinhui07,pinhui08,pinhui04,pinhui12 # 项目根目录 [/] @admin = rw @dev = r # wap.service [wap.service:/] @admin = rw @dev =rw # web.service [web.service:/] @admin = rw @dev = rw # web.passport [web.passport:/] @admin = rw @dev = rw # wap.passport [wap.passport:/] @admin = rw @dev = rw # web.news [web.news:/] @admin = rw @dev = rw
4.配置apache的认证
vim /etc/httpd/conf.d/subversion.conf
# ==========================根目录====================================
<Location /svn>
DAV svn
# SVNParentPath /var/www/svn
SVNPath /data/svn/data
SVNListParentPath on
# # Limit write permission to list of valid users.
# <LimitExcept GET PROPFIND OPTIONS REPORT>
# # Require SSL connection for password protection.
# # SSLRequireSSL
#
AuthType Basic
AuthName "svn for project"
AuthUserFile /data/svn/conf/passwd
AuthzSVNAccessFile /data/svn/conf/authz
Require valid-user
# </LimitExcept>
</Location>
# ==========================php项目====================================
<Location /svn/php.service>
DAV svn
# SVNParentPath /var/www/svn
SVNPath /data/svn/data/php.service
SVNListParentPath on
# # Limit write permission to list of valid users.
# <LimitExcept GET PROPFIND OPTIONS REPORT>
# # Require SSL connection for password protection.
# # SSLRequireSSL
#
AuthType Basic
AuthName "svn for project"
AuthUserFile /data/svn/conf/passwd
AuthzSVNAccessFile /data/svn/conf/authz
Require valid-user
# </LimitExcept>
</Location>
# ================================wap源码====================================
<Location /svn/wap.source>
DAV svn
SVNPath /data/svn/data/wap.source
SVNListParentPath on
AuthType Basic
AuthName "svn for project"
AuthUserFile /data/svn/conf/passwd
AuthzSVNAccessFile /data/svn/conf/authz
Require valid-user
</Location>
# ================================tuan源码====================================
<Location /svn/web.tuan>
DAV svn
SVNPath /data/svn/data/web.tuan
SVNListParentPath on
AuthType Basic
AuthName "svn for project"
AuthUserFile /data/svn/conf/passwd
AuthzSVNAccessFile /data/svn/conf/authz
Require valid-user
</Location>
# ================================wap.api源码====================================
<Location /svn/wap.api>
DAV svn
SVNPath /data/svn/data/wap.api
SVNListParentPath on
AuthType Basic
AuthName "svn for project"
AuthUserFile /data/svn/conf/passwd
AuthzSVNAccessFile /data/svn/conf/authz
Require valid-user
</Location>
# ================================shop 2.0源码====================================
5.svn目录权限配置及启动svn
chown -R apache.apache /data/svn/data svnserve -d -r /data/svn/data/ --pid-file=/data/svn/conf/svn.pid --log-file=/data/svn/conf/svn.log /etc/init.d/httpd start
6.登陆svn,http://192.168.1.223/svn ,[svn是subversion.conf里面配置的目录,指向/data/svn/data启动目录]


7.建立新仓库如:ph仓库,先移除根目录的文件,然后创建新的仓库,并授权新仓库权限:chown -R apache.apache ph

8.增加访问路径
vim /etc/httpd/conf.d/subversion.conf
<Location /svn/ph>
DAV svn
# SVNParentPath /var/www/svn # 指向新仓库地址
SVNPath /data/svn/data/ph
SVNListParentPath on
# # Limit write permission to list of valid users.
# <LimitExcept GET PROPFIND OPTIONS REPORT>
# # Require SSL connection for password protection.
# # SSLRequireSSL
#
AuthType Basic
AuthName "Authorization Realm"
AuthUserFile /data/svn/conf/passwd
AuthzSVNAccessFile /data/svn/conf/authz
Require valid-user
# </LimitExcept>
</Location>
9.访问新仓库

10.在Ph仓库上传文件,然后在根目录指向ph仓库,chout,然后新建文件并commit


11.根仓库chout,然后在根仓库新建新仓库同名的目录,


SVNadmin管理工具安装
cd /usr/local/src get http://sourceforge.net/projects/ifsvnadmin/files/svnadmin-1.6.2.zip/download --no-check-certificate unzip svnadmin-1.6.2.zip cp -r iF.SVNAdmin-stable-1.6.2/ /var/www/html/svnadmin chmod -R 777 /var/www/html/svnadmin/data chown -R apache.apache /var/www/html/svnadmin/ chmod 777 /data/svn/conf/passwd chmod 777 /data/svn/conf/authz

浙公网安备 33010602011771号