码迷,mamicode.com
首页 > Web开发 > 详细

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

时间:2016-12-16 12:20:40      阅读:212      评论:0      收藏:0      [点我收藏+]

标签:开源软件   管理工具   管理软件   服务器   服务端   

实验环境:

服务端: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软件和中间组件

[root@h1 ~]# yum -y install subversion httpd mod_dav_svn

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

查看是否安装成功

[root@h1 ~]# svn --version


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

[root@h1 ~]# mkdir /var/www/repos                                     //创建版本库目录

[root@h1 ~]# svnadmin create /var/www/repos/test            //项目仓库目录

技术分享

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

启动SVN服务:

[root@h1 ~]# svnserve -d -r /var/www/repos/

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

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

技术分享

三、配置Apache服务

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

[root@h1 ~]# vi /etc/httpd/conf.modules.d/10-subversion.conf

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

技术分享技术分享

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

[root@h1 ~]# 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时,会使用这个文件中的用户信息验证用户和密码。

[root@h1 ~]# mkdir /var/www/repos/svn

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

查看用户名和密码:

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

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

[root@h1 ~]# vi /var/www/svn/authz

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

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

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

[root@h1 ~]# chmod -R 777 /var/www/repos/

[root@h1 ~]# firewall-cmd --permanent --add-service=http

[root@h1 ~]# firewall-cmd --reload

(6)启动Apache服务

[root@h1 ~]# systemctl enable httpd

[root@h1 ~]# systemctl restart httpd

四、访问测试

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


win7客户端

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

技术分享

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

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

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

技术分享技术分享

技术分享技术分享

技术分享

技术分享

技术分享

如果弹出这个错误

技术分享技术分享

查Apache的错误日志

[root@h1 ~]# vim /var/log/httpd/error_log

技术分享技术分享

解决方法1:关闭SELlinux

解决方法2:

[root@h1 ~]# setsebool -P httpd_unified 1

技术分享技术分享


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


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

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

标签:开源软件   管理工具   管理软件   服务器   服务端   

原文地址:http://8982757.blog.51cto.com/8972757/1883251

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!