1.安装相关软件包
安装过程如下:
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
4.在apache下配置svn
[root@localhost ~]# vim /etc/httpd/conf.d/subversion.conf
DAV svn
SVNParentPath /svn #svn的根目录
AuthType Basic
AuthName "Restricted Access" #认证时显示的信息
#File will be created by SVNManager, keep location in mind!
AuthUserFile /svn/passwd #用户文件&密码
Require valid-user #要求真实用户,不能匿名
#SSLRequireSSL
#File will be created by SVNManager, keep location in mind
AuthzSVNAccessFile /svn/authz #访问权限控制文件
# Limit write permission to list of valid users.
#
# # Require SSL connection for password protection.
# # SSLRequireSSL
# AuthType Basic
# AuthName "Authorization Realm"
# AuthUserFile /path/to/passwdfile
# Require valid-user
#
其中/svn是准备放仓库的目录,这个目录可以放置多个代码仓库
[root@localhost ~]#
mkdir
/svn
[root@localhost ~]# svnadmin create /svn/test
[root@localhost ~]# ls /svn/test ---> conf db format hooks locks README.txt
[root@localhost ~]#
chown
-R root.root
/svn
创建用户文件passwd和权限控制文件authz
[root@localhost ~]# touch /
svn/passwd
[root@localhost ~]# touch
/authz
启动
svnserve -d -r /svn
注意:不要启动到具体版本库,会出现权限问题;
Linux下设置svn开机自启动
https://blog.csdn.net/u013405778/article/details/47171483
由于iF.SVNAdmin使用php写的,因此我们需要安装php
[root@localhost ~]# yum install php
安装配置
if
.svnadmin
[root@localhost~]# wget http:
//sourceforge.net/projects/ifsvnadmin/files/svnadmin-1.6.2.zip/download
[root@localhost ~]# cd /usr/src/
[root@localhost src]# unzip iF.SVNAdmin-stable-1.6.2
[root@localhost iF.SVNAdmin-stable-1.6.2]# cp -r iF.SVNAdmin-stable-1.6.2/ /var/www/html/svnadmin
[root@localhost ~]# 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
5.启动服务
如果开启了防火墙, 需要开启httpd访问权限
[root@localhost ~]# firewall-cmd --permanent --add-service=http
[root@localhost ~]# firewall-cmd --permanent --add-service=https
[root@localhost ~]# firewall-cmd --reload
通过如下命令来启用服务
[root@localhost ~]# service httpd start
如下命令使其开机自启动
[root@localhost ~]# systemctl enable httpd.service
重启Apache
[root@localhost ~]# service httpd restart
3、svnadmin配置
输入:http://ip/svnadmin,首先需要进行配置,如图中的Test按钮可以对相关的配置进行校验
Error: Could not copy configuration file template. Require write permission (777) to "data" folder and all containing files.
#0 /var/www/svnadmin/index.php(20): include_once()
#1 {main}
出现上面错误时,直接赋权限就OK了:
cd /var/www/svnadmin/
chmod 777 data
不行则关闭SELinux
http://blog.51cto.com/bguncle/957315
如果admin密码忘记,admin密码这样修改:
sudo htpasswd /var/www/html/svnadmin/data/passwd admin admin123