CentOS 安装SVN以及可视化管理工具iF.SVNAdmin

一、安装Apache和PHP

由于iF.SVNAdmin使用php写的,因此我们需要安装php

yum install httpd php

二、安装SVN服务器

subversion即SVN,mod_dav_svn是Apache服务器访问SVN的一个模块

yum install subversion mod_dav_svn

三、安装完成后可以通过如下命令查看是否安装成功

httpd -version
svnserve --version
ls /etc/httpd/modules/ | grep svn

四、在Apache下配置 SVN

vim /etc/httpd/conf.d/subversion.conf

复制下面的配置,粘贴

LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svn>
DAV svn
#svn的根目录
SVNParentPath /var/www/svn
#SSL访问权限
#SSLRequireSSL
#Basic认证方式
AuthType Basic
#认证时显示的信息
AuthName "Authorization SVN"
#用户文件&密码
AuthUserFile /var/www/svnconfig/passwd
#访问权限控制文件
AuthzSVNAccessFile /var/www/svnconfig/authz
#要求真实用户,不能匿名
Require valid-user
</Location>

保存退出!

五、创建SVN 仓库目录和权限信息目录

mkdir /var/www/svn
mkdir /var/www/svnconfig

六、创建SVN权限文件和密码文件

touch /var/www/svnconfig/authz
touch /var/www/svnconfig/passwd

七、安装iF.SVnAdmin

7.1 下载:svnadmin-1.6.2.zip文件

(http://sourceforge.net/projects/ifsvnadmin/files/svnadmin-1.6.2.zip/download)

wget https://jaist.dl.sourceforge.net/project/ifsvnadmin/svnadmin-1.6.2.zip

7.2 解压

unzip svnadmin-1.6.2.zip

7.3 把解压后的文件 iF.SVNAdmin-stable-1.6.2 拷贝到 /var/www/html/svnadmin

cp -r iF.SVNAdmin-stable-1.6.2/ /var/www/html/svnadmin

7.4 更改data目录的读写模式

chmod -R 777 /var/www/html/svnadmin/data/

7.5 更改 /var/www/html/svnadmin/ 权属

chown -R apache:apache /var/www/html/svnadmin/

7.6 更改 /var/www/svn 的读写模式

chmod -R 777 /var/www/svn

7.7 更改下列两个文件的读写模式

chmod 777 /var/www/svnconfig/authz
chmod 777 /var/www/svnconfig/passwd

八、启动Apache服务

systemctl start http

(注意:Apache的端口默认是80端口)

加入开机自启动

systemctl enable httpd

如果开启了防火墙, 需要开启httpd访问权限

firewall-cmd --permanent --add-service=http

firewall-cmd --zone=public --add-port=80/tcp --permanent

firewall-cmd --reload

通过查看文件/usr/lib/systemd/system/svnserve.service,了解到svnserve的配置文件是/etc/sysconfig/svnserve

修改/etc/sysconfig/svnserve

vim /etc/sysconfig/svnserve

OPTIONS="-r /var/svn"

修改成:

OPTIONS="-r /var/www/svn" 

启动后浏览器输入http://服务器地址:端口(http://192.168.77.134:90)/svnadmin/ 后登录,登录后如下图,输入各个配置文件的路径后点击Test进行测试是否成功,全部成功后保存配置,单击Save configuration按钮
CentOS 安装SVN以及可视化管理工具iF.SVNAdmin_第1张图片
保存后,会在 /var/www/svnconfig/passwd 文件中自动生成默认用户名和密码,都是admin
再次访问:http://192.168.77.134/svnadmin,输入刚生成的用户名和密码,就可以访问啦~

九、使用TortoiseSVN客户端连接测试

9.1 安装

TortoiseSVN客户端官网下载即可:
https://tortoisesvn.net/downloads.html

9.2 使用

安装之后,本地磁盘右键检出即可
CentOS 安装SVN以及可视化管理工具iF.SVNAdmin_第2张图片
这里注意一下,检出地址为:http://192.168.77.134/svn/test
http://[服务器IP]:[apache端口]/svn/[仓库名]
CentOS 安装SVN以及可视化管理工具iF.SVNAdmin_第3张图片
之所以强调这个检出地址,是因为如果不用SVNAdmin,命令方式使用SVN的话,这个检出地址应该是svn://192.168.77.134/test
svn://[服务器IP]:[apache端口]/[仓库名]

9.3 用户权限设定

如果提交文件没有弹出登录框,需要配置下svnserve.conf文件
切换到仓库配置文件所在目录:

cd /var/www/svn/test/conf

打开svnserve.conf

vim svnserve.conf

增加以下配置

  • anon-access = none#匿名用户可读
  • auth-access = write #授权用户可写
  • password-db = passwd #使用哪个文件作为账号文件
  • authz-db = authz #使用哪个文件作为权限文件
  • realm = /var/www/svn # 认证空间名,版本库所在目录
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = /var/www/svn

注意在[geberal]下面加,效果如下
CentOS 安装SVN以及可视化管理工具iF.SVNAdmin_第4张图片
再测试检出提交查看日志功能,一切正常。
CentOS 安装SVN以及可视化管理工具iF.SVNAdmin_第5张图片

至此,检出提交都可以了,大功告成!

你可能感兴趣的:(Linux)