第一种:基于SVN+Apache+IF.svnadmin支持https实现web管理SVN:
1、简单介绍:
iF.SVNAdmin应用程序是您的Subversion授权文件的基于Web的GUI。它基于PHP 5.3,需要安装一个Web服务器(Apache)。该应用程序不需要数据库后端或任何类似的,它完全基于Subversion授权和用户认证文件。(+包含用户和组的LDAP支持)2、软件准备:
[root@localhost ~]#yum install wget unzip php httpd mod_dav_svn subversion -y
查看是否安装成功:
[root@localhost ~]#httpd -version[root@localhost ~]#svnserve --version[root@localhost ~]#ls /etc/httpd/modules/ | grep svn
3、配置apache:
[root@localhost ~]# vim /etc/httpd/conf.d/subversion.conf
1 LoadModule dav_svn_module modules/mod_dav_svn.so 2 LoadModule authz_svn_module modules/mod_authz_svn.so 34 DAV svn 5 #vn的根目录SSLRequireSSL SSL访问权限 6 SVNParentPath /var/www/svn 7 #Basic认证方式 8 AuthType Basic 9 #认证时显示的信息 10 AuthName "Authorization SVN" 11 #用户文件&密码12 AuthUserFile /var/www/svn/passwd13 #访问权限控制文件14 AuthzSVNAccessFile /var/www/svn/authz15 #要求真实用户,不能匿名16 Require valid-user 17
4、建立SVN Server仓库:
#创建存储仓库的目录[root@localhost ~]# mkdir /var/www/svn#创建仓库[root@localhost ~]# svnadmin create /var/www/svn/warehouse#文件夹授权[root@localhost ~]# chown -R apache.apache /var/www/svn#创建用户文件passwd和权限控制文件authz[root@localhost ~]# touch /var/www/svn/passwd [root@localhost ~]# touch /var/www/svn/authz
5. 配置安装PHP&IF.SVNadmin
[root@localhost ~]# cd /tmp[root@localhost tmp]# wget http://sourceforge.net/projects/ifsvnadmin/files/svnadmin-1.6.2.zip/download[root@localhost tmp]# unzip iF.SVNAdmin-stable-1.6.2[root@localhost tmp]# mkidr -p /var/www/html/svnadmin[root@localhost tmp]# cp -r iF.SVNAdmin-stable-1.6.2/* /var/www/html/svnadmin[root@localhost tmp]# cd /var/www/html[root@localhost html]# chown -R apache.apache svnadmin[root@localhost html]# cd /var/www/html/svnadmin[root@localhost html]# chmod -R 777 data[root@localhost html]# chmod -R 777 /var/www/svn/passwd [root@localhost html]# chmod -R 777 /var/www/svn/authz[root@localhost html]# vim /etc/sysconfig/svnserve OPTIONS="-r /var/www/svn"
6.关闭防火墙,启动服务
[root@localhost html]# firewall-cmd --permanent --add-service=http[root@localhost html]# firewall-cmd --permanent --add-service=https[root@localhost html]# firewall-cmd --reload [root@localhost html]# systemctl start httpd[root@localhost html]# systemctl enable httpd
7.配置:
浏览器地址输入http://ip/svnadmin出现配置界面,输入下图中配置信息,输入每个配置信息可以点击旁边的Test测试是否输入正确,最后保存配置8.如果需要使用https,建议你使用公网证书,对配置做哪下配置:
[root@localhost ~]#vim /etc/httpd/conf.d/ssl.conf#这里配置证书路径SSLCertificateFile /etc/pki/tls/certs/server.crtSSLCertificateKeyFile /etc/pki/tls/private/server.keySSLCertificateChainFile /etc/pki/tls/certs/example.com.ca-bundle
第二种:只安装服务器核心,通过命令行来管理
1、yum 安装subversion
[root@localhost /] yum install subversion
2、创建仓库
[root@localhost /]# cd /home[root@localhost home]# mkdir svn[root@localhost home]# svnadmin create /home/svn
3.配置passwd
[root@localhost conf]# vi passwd [users]test1=123456test2=123456
4、配置authz
[root@localhost conf]# vi authz [/]liuxianan=rwtest1=rtest2=r*=
5、使用用户分组
格式说明:
版本库目录格式:[<版本库>:/项目/目录]@<用户组名> = <权限><用户名> = <权限>[root@localhost conf]# vi authz[groups]group1 = liuxianangroup2 = test1,test2[/]@group1 = rw@group2 = r* =
6、配置svnserve.conf
[root@localhost conf]# vi svnserve.conf #匿名用户可读anon-access = read #授权用户可写auth-access = write #使用哪个文件作为账号文件password-db = passwd#使用哪个文件作为权限文件authz-db = authz# 认证空间名,版本库所在目录realm = /home/svn
7、启动与停止
[root@localhost conf]# svnserve -d -r /home/svn(启动)[root@localhost conf]#kill all svnserve(停止)
客户端安装
其它参考链接