SVN+apache搭建一个版本控制服务器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SVN+apache搭建一个版本控制服务器相关的知识,希望对你有一定的参考价值。

实验环境:

服务端:Centos 7     IP: 192.168.56.133

客户端:window7

服务概述:

SVN(subversion)是版本管理工具,是CVS的接班人。目前,绝大多数开源软件都使用SVN作为代码版本管理软件。常见的版本管理软件有CVS、SVN、Git。

SVN运行模式:

模式一:SVN服务器单独运行   监听:3690端口   访问:svn://IP

模式二:SVN服务+Apache     监听:80端口    访问:http://IP   本实验要实现的


一、安装SVN、Apache软件和中间组件

[[email protected] ~]# yum -y install subversion httpd mod_dav_svn

mod_dav_svn模块 : apache http 服务器的插件,可以让版本库通过http协议,在网站上展现。

查看是否安装成功

[[email protected] ~]# svn --version


二、创建版本库目录和项目仓库目录

[[email protected] ~]# mkdir /var/www/repos                                     //创建版本库目录

[[email protected] ~]# svnadmin create /var/www/repos/test            //项目仓库目录

技术分享

#注:用户权限配置我们使用apache的,这里暂时不用svn自带

启动SVN服务:

[[email protected] ~]# svnserve -d -r /var/www/repos/

-d表示以daemon方式(后台运行)运行

-r  /var/www/repos指定svn根目录是/var/www/repos

技术分享

三、配置Apache服务

(1)查看apache支持subversion两个动态库有没有安装成功

[[email protected] ~]# vi /etc/httpd/conf.modules.d/10-subversion.conf

 #看到下面配置文件中两个模块相关信息,说明安装成功。

技术分享技术分享

(2)配置apache通过mod_dav_svn模块访问SVN服务器

[[email protected] ~]# vi /etc/httpd/subversion.cof

<Location /svn>                                            // Apache的虚拟目录

DAV svn

SVNParentPath /var/www/repos                               //存放项目的真实目录

AuthType Basic

AuthName "SVN server of test!"                               //认证是弹出的欢迎信息

AuthUserFile /var/www/svn/repos/passwd                         //存放用户名和密码

AuthzSVNAccessFile /var/www/repos/svn/authz                //存放用户权限

Require valid-user

</Location>

(3)建立本地访问控制文件/var/www/svn/passwd  后期通过httpd服务器访问svn时,会使用这个文件中的用户信息验证用户和密码。

[[email protected] ~]# mkdir /var/www/repos/svn

[[email protected] ~]# htpasswd -c /var/www/repos/svn/pass hq      //用户名可按需求修改

查看用户名和密码:

* 密码是加密的   (密码+用户名 ) md5

(4)建立用户权限文件 /var/www/svn/authz

[[email protected] ~]# vi /var/www/svn/authz

[/]             //这个表示在所有仓库的根目录下

hq=rw     //表示hq用户对所有仓库根目录下的软件版本库有rw权限

(5)给目录权限,设置防火墙

[[email protected] ~]# chmod -R 777 /var/www/repos/

[[email protected] ~]# firewall-cmd --permanent --add-service=http

[[email protected] ~]# firewall-cmd --reload

(6)启动Apache服务

[[email protected] ~]# systemctl enable httpd

[[email protected] ~]# systemctl restart httpd

四、访问测试

访问地址: http://192.168.56.133/svn/test


win7客户端

http://tortoisesvn.net/about.zh.html

技术分享

注: 32位的软件只能安装在32位操作系统上。 我是64位,所以在安装在64上。

下载安装完成后,重启计算机

在电脑中建立一文件夹 鼠标右键点击“SVN CHeckout"

技术分享技术分享

技术分享技术分享

技术分享

技术分享

技术分享

如果弹出这个错误

技术分享技术分享

查Apache的错误日志

[[email protected] ~]# vim /var/log/httpd/error_log

技术分享技术分享

解决方法1:关闭SELlinux

解决方法2:

[[email protected] ~]# setsebool -P httpd_unified 1

技术分享技术分享


第一次写Blog,请大家见谅!!谢谢!!


本文出自 “Dake” 博客,请务必保留此出处http://8982757.blog.51cto.com/8972757/1883251

以上是关于SVN+apache搭建一个版本控制服务器的主要内容,如果未能解决你的问题,请参考以下文章

使用SVN+apache搭建版本控制服务器

CentOS 7 使用SVN+Apache搭建版本控制服务器

搭建SVN版本控制服务器

版本控制系统svn搭建

svn 版本控制

Windows下搭建SVN服务器并配置eclipse和idea