1. 介绍

这里想在CentOS上搭建的是基于http访问的SVN Server

2. 软件

安装相关软件

 yum install httpd httpd-devel mod_dav_svn subversion mod_ssl 

其中, mod_dav_svn是apache服务器访问svn的一个模块

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

httpd -version
svnserve –version
ls /etc/httpd/modules/ | grep svn  
           ----->  mod_authz_svn.so mod_dav_svn.so

3. 建立仓库

通过如下命令建立svn仓库

其中/var/www/svn是准备放仓库的目录,这个目录可以放置多个代码仓库
AuthUserFile就是用户和密码的文件,也可以移动到其他地方单独管理.

mkdir /var/www/svn
svnadmin create /var/www/svn/workspace
ls /var/www/svn/workspace
           --->  conf  db  format  hooks  locks  README.txt
chown -R apache.apache /var/www/svn

4. SVN配置

创建用户文件passwd, 并建立用户admin和guest

touch /var/www/svn/passwd
htpasswd /var/www/svn/passwd admin
htpasswd /var/www/svn/passwd guest

创建权限文件authz

cp /var/www/svn/workspace/conf/authz /var/www/svn/authz

修改/var/www/svn/authz, 使其包含如下内容

[/]
admin = rw
guest = r

5. httpd配置

创建文件/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 />
DAV svn
SVNPath /var/www/svn/workspace
SVNListParentPath on
AuthType Basic
AuthName "Authorization SVN"
AuthUserFile /var/www/svn/passwd
AuthzSVNAccessFile /var/www/svn/authz
Require valid-user
</Location>

6. 启动服务

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

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

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

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

通过如下命令来启用服务

systemctl start svnserve.service
systemctl start httpd.service

如下命令使其开机自启动

systemctl enable svnserve.service
systemctl enable httpd.service

完成后可以通过如下地址来访问SVN服务器

参考:
<CentOS7:搭建SVN + Apache 服务器>
<Install SVN Server on Fedora 23/22, CentOS/RHEL 7.2/6.7/5.11>

CentOS下SVN使用的更多相关文章

  1. CentOS下SVN服务的启动与关闭

    CentOS下SVN服务的启动与关闭 操作系统:CentOS 6.5  SVN版本:1.8.11 启动SVN服务:  svnserve -d -r /home/svn /home/svn 为版本库的根 ...

  2. CentOS下 SVN版本控制的安装(包括yum与非yum)的步骤记录。

    一.yum安装 rpm -qa subversion //检查是否安装了低版本的SVN yum remove subversion //如果存储旧版本,卸载旧版本SVN 开始安装 yum -y ins ...

  3. centos下svn的主要常用命令(解决商城系统添加的文件无法自动更新至svn服务器)

    问题描述: 在商城中通过网页上传的png文件无法自动添加到版本库中. 查找过程: 通过程序分析,增加的主要是数据文件,主要分布在data目录中. svn list /home/ggg --depth= ...

  4. Centos下SVN环境部署记录

    大多数情况下,我们日常工作中用的版本控制系统都会选择分布式的Git,它相比于集中式的SVN有很多优势.但是有些项目软件基于自身限制,可能只支持SVN做工程同步.废话就不多说了,下面记录下SVN的部署和 ...

  5. Linux(CentOS)下SVN命令使用实例[转]

    原文出处: http://blog.csdn.net/limingzhong198/article/details/22394809 前言:关于Linux(Unix)系统下的SVN命令使用的文章,在网 ...

  6. 阿里云(centos)下svn 服务器搭建

    安装说明 系统环境:阿里云centos安装方式:yum install subversion 检查已安装版本 #检查是否安装了低版本的SVN[root@localhost /]# rpm -qa su ...

  7. CentOs下 SVN版本控制的安装(包括yum与非yum)

    一.yum安装 rpm -qa subversion //检查是否安装了低版本的SVN yum remove subversion //如果存储旧版本,卸载旧版本SVN 开始安装 yum -y ins ...

  8. centos下SVN搭建多个库文件总汇

    1.checkout时,提示:URL svn://192.168.1.99/svntest doesn't exist...奇怪,怎么会提示库不存在呢?肯定是哪里配置问题.后来尝试了半天,也在网上搜索 ...

  9. CentOS下SVN服务器的搭建使用

    转载自:http://ailurus.blog.51cto.com/4814469/1168481 SVN作为新一代代码版本管理工具,有很多优点,管理方便,逻辑明确,安全性高,代码一致性高.SVN数据 ...

随机推荐

  1. Spark&Hive结合起来

    1.spark与Hive结合起来 前提:当你spark的版本是1.6.1的时候,你的Hive版本要1.2.1,用别的版本会有问题 我们在做的时候,Hive的版本很简单,我们只需要解压缩,告诉他Hive ...

  2. Vsftpd服务 和 TFTP协议

    FTP 文件传输协议 (File Transfer Protocol) FTP是一种在互联网中进行文件传输的协议,基于客户端/服务器模式,默认使用20.21号端口,其中端口20(数据端口)用于进行数据 ...

  3. LinkedHashMap和HashMap的比较使用 详解

    由于现在项目中用到了LinkedHashMap,并不是太熟悉就到网上搜了一下. import java.util.HashMap; import java.util.Iterator; import ...

  4. 关于Python、Java、C#语言的一些比较

    不能说某某语言不好! 首先,千万别说某一个语言好不好,应为这样的用词是错的,我曾经在好多场合听到一些程序员说java好,.net不好这类的话. 其实语言不分好坏,只是在具体的某些领域或业务场景上不合适 ...

  5. Postman-进阶(2)

    Postman-进阶(2) Postman-简单使用 Postman-进阶使用 Postman-CI集成Jenkins 管理请求 保存请求-添加“打开百度首页请求” 设置请求方式为Get,地址为www ...

  6. 关于IOS下日期格式分隔符 - 、 /的问题

    之前我们项目有一个低价日历,服务端下发的时间格式为: "2014-07-21 09:45:12"  然后一直出不了数据,后来发现. IOS下无论chrome.safari还是Uc如 ...

  7. css3实现圆角边框渐变

    <button class="border">112233</button> 创建button .border{ position: relative; b ...

  8. python 学习分享-进程

    python中的多线程其实并不是真正的多线程,如果想要充分地使用多核CPU的资源,在python中大部分情况需要使用多进程.Python提供了非常好用的多进程包multiprocessing,只需要定 ...

  9. Space Shooter 太空射击

    1.控制玩家移动 public float speed = 10f; public float xMin = -6.5f; public float xMax = 6.5f; public float ...

  10. ASP.NET Core 2.1 源码学习之 Options[3]:IOptionsMonitor 【转】

    原文链接:https://www.cnblogs.com/RainingNight/p/strongly-typed-options-ioptions-monitor-in-asp-net-core. ...