centos7部署if.svnadmin可视化管理svn
Centos 7下部署svn后,添加仓库、分配权限、创建账号等都需要登录服务器操作,⼈员较多时不太⽅便。
svnadmin可以实现web后台⽅式可视化管理svn。
svn可视化管理svnadmin,有基于php的IF.svnadmin和基于java的jsvnadmin两款。
本篇记录⼀下php写的if.svnadmin,另⼀篇记录java写的jsvnadmin。
iF.SVNAdmin
iF.SVNAdmin应⽤程序是您的Subversion授权⽂件的基于Web的GUI。它基于PHP 5.3,需要安装⼀个Web服务器(Apache)。该应⽤程序不需要数据库后端或任何类似的,它完全基于Subversion授权和⽤户认证⽂件。(+包含⽤户和组的LDAP⽀持)
⼀,安装软件
安装过程如下:
1.安装apache
[root@localhost ~]# yum install httpd -y
2.安装svn服务器(其中,mod_dav_svn是apache服务器访问svn的⼀个模块)
[root@localhost ~]# yum install mod_dav_svn subversion -y
3.安装完成后可以通过如下命令查看是否安装成功
[root@localhost ~]# httpd -version
[root@localhost ~]# svnserve --version
[root@localhost ~]# ls /etc/httpd/modules/ | grep svn
mod_authz_svn.so
mod_dav_svn.so
3.在apache下配置svn
下载apache
[root@localhost ~]# vim /etc/httpd/conf.f
<Location /svn/>
DAV svn
SVNParentPath /var/www/svn
AuthType Basic
AuthName "Authorization SVN"
AuthUserFile /var/www/svn/passwd
AuthzSVNAccessFile /var/www/svn/authz
Require valid-user
</Location>
RedirectMatch ^(/svn)$ $1/
4. yum安装php
[root@localhost ~]# yum install php -y
5,下载if.svnadmin
#此处需FQ
wget sourceforge/projects/ifsvnadmin/files/svnadmin-1.6.2.zip/download
[root@localhost tools]# ls svnadmin-1.6.2.zip
svnadmin-1.6.2.zip
#unzip解开后 mv到/var/www/html/ 改名为svnadmin
cd /var/www/html
chown -R apache.apache svnadmin
#⽹上⼤部分需授权svnadmin/data⽬录权限为777,经测默认即可。
[root@localhost html]# cd /var/www/html/
[root@localhost html]# ll
total 4
drwxr-xr-x 9 apache apache 4096 Aug 292013 svnadmin
⼆,创建svn仓库
[root@localhost ~]# mkdir /var/www/svn
[root@localhost ~]# svnadmin create /var/www/svn/sungeek
[root@localhost ~]# ls /var/www/svn/sungeek
---> conf db format hooks locks
[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
通过查看⽂件/usr/lib/systemd/system/svnserve.service, 了解到svnserver的配置⽂件是/etc/sysconfig/svnserve
修改/etc/sysconfig/svnserve
[root@localhost html]# cat /etc/sysconfig/svnserve
# OPTIONS is used to pass command-line arguments to svnserve.
#
# Specify the repository location in -r parameter:
#OPTIONS="-r /var/svn"
OPTIONS="-r /var/www/svn"
#如果不使⽤svn://ip/xxx⽅式请求,测出svn⽆需启动。(貌似也没啥⽤)
三,启动服务
#启动apache
[root@localhost ~]# systemctl start httpd.service
#添加开机⾃启服务
[root@localhost ~]# systemctl enable httpd.service
四,访问
启动webserver服务后,浏览器地址输⼊ip/svnadmin出现配置界⾯,输⼊下图中配置信息,输⼊每个配置信息可以点击旁边的Test测试是否输⼊正确,最后保存配置
常见问题:
1,创建了代码仓库后,配置访问路径时不显⽰仓库问题?
处理办法:起初出现这种情况时,我创建了BCD;CDE仓库,重启apache、退出重新登录都不好使,最好只好删除/var/www/html/ ⽬录下的 svnadmin⽬录,然后重新将svnadmin压缩包解压⾄此,刷新即可。
但,在尝试了数次之后,总觉得这办法不靠谱,直到最后解压开svnadmin压缩包后,不对svnadmin/data⽬录进⾏777的授权,权限太⼤不好。结果就顺便解决了上⾯创建仓库⽆法在访问路径下显⽰的问题了。
2,创建代码仓库后,另⼀种情况是如果访问路径不显⽰时,需要点击创建的仓库名前的五⾓星,然后新建即可。
3,创建了⽗⽬录后,⽆法创建⼦⽬录或多个⼦⽬录?
解决办法:在创建了⽗⽬录test1后,还想在test1下创建⼀个⼦⽬录和多个⼦⽬录时,svnadmin就不能使⽤了,直接在test1⽬录下提交多个⼦⽬录,然后再登录web端就可以查看到下⾯的⼦⽬录了。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论