svn的安装:

yum install subversion -y

mkdir                   /svn 创建用来存放svn版本库的目录

svnadmin create /svn/first          创建一个svn的版本库

svnsereve -d -r /svn/first           启动该版本库

版本库的备份:

svnadmin dump svn/test > svn_backfile   把具体的某个版本库(这里是“test”)重定向到某个文件中去。这样就将整个版本库备份下来了。

在新的主机上安装svn并将之前的版本库导入,同时实现利用http协议访问svn:

yum install subversion -y

mkdir /home/svn    创建用来存放svn版本库的目录

svnadmin create /home/svn/test    创建一个svn的版本库

svnadmin load /home/svn/test < svn_backfile  导入之前备份的版本库

实现利用http访问svn:

思路:apache本身自带svn的模块——mod_dav_svn,由于Subversion需要版本化的控制,因此标准的HTTP协议不能满足需求。要让Apache与Subversion协同工作,就要使用WebDAV(Web-based Distributed Authoring and Versiong)Web分布式创作和版本控制协议。 mod_dav_san模块就是作为Subversion与Apache之间的接口,通过它,Apache就可以访问版本库,并且可以让客户端也使用HTTP的扩展协议WebDAV/DeltaV进行访问。

在安装了mod_dav_svn模块之后,只需要为版本库所在的目录进行相应的配置,并添加认证模块,就可以了。

配置步骤:

安装并启动httpd(centos6.9)

因为centos6默认httpd是2.2没有svn模块,所以需要在编译时加入svn的功能

httpd-2.4 依賴于1.4+及以上版本的apr 而且版本不能太高,最好用1.5的

yum install gcc

yum install pcre-devel

yum install expat-devel

yum install openssl-devel -y

tar -xf apr-1.5.0.tar.bz2

cd apr-1.5.0

./configure --prefix=/usr/local/apr

make && make install

tar -xfapr-util-1.5.3.tar.bz2

cd apr-util-1.5.3

./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

make && make install

tar -xfhttpd-2.4.28.tar.bz2

cd httpd-2.4.28

./configure --prefix=/usr/local/apache --with-apr-util=/usr/local/apr-util   --with-apr=/usr/local/apr       --sysconfdir=/etc/httpd24  --enable-so --enable-ssl   --enable-cgi   --enable-rewrite  --with-zlib  --with-pcre --with-mpm=prefork  --enable-modules=most  --enable-mpms-shared=all  --enable-dav

# 其中--enable-dav --enable-so是和subversion整合时需要的

make && make install

在源码里已经有启动的脚本,我们要修改下即可,把Apache加入系统SysV服务中来。

在源码httpd-2.x.x/build/rpm中存在httpd.init,将其复制到/etc/init.d/下面,并赋予执行权限。

安装并配置svn模块:

yum install mod_dav_svn -y

修改/etc/httpd/conf.d/subversion.conf配置文件的内容

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

  <Location /svn/>

  DAV svn

   SVNParentPath /home/svn/

    # Limit write permission to list of valid users.

   # <LimitExcept GET PROPFIND OPTIONS REPORT>

     # Require SSL connection for password protection.

     # SSLRequireSSL

     AuthType Basic

      AuthName "Authorization Realm"

    AuthUserFile /home/svn/svn_http_passwd

   AuthzSVNAccessFile /home/svn/svn_authz

   Require valid-user

   # </LimitExcept>

  </Location>

cp /home/svn/project1/conf/svnserve.conf  /home/svn/conf/svnserve.conf  得到版本库配置文件的模板

vi /home/svn/conf/svnserve.conf    编辑配置文件

  anon-access = none

  auth-access = write

  password-db = /home/svn/svn_passwd

  auth-db = /home/svn/svn_authz

  realm = test-SVN

svnserve -d -r /home/svn/test --config-file /home/svn/svnserve.conf --listen-port 3690              启动时指明配置文件位置

修改了配置文件之后,要记住,这里是以apache用户的身份来访问svn的版本库,所以需要修改版本库的属主,使apache用户能够来访问。

chown -R apache:apache /home/svn/test/

添加防火墙规则

iptables -A INPUT -p tcp --dport 80 -j ACCEPT

iptables -A INPUT -m state --state NEW -p tcp --dport 3690 -j ACCEPT

通过网页访问版本库:ip/svn    url路径是根据在/etc/httpd/conf.d/subversion.conf  配置文件中Location后面的地址来的。

svn的安装和备份的更多相关文章

  1. SVN的安装及使用指南

    SVN的安装及使用指南 目录: 一.     SVN的安装. 1. VisualSVN的安装 2. Server Port的选择及错误处理 3. TortorieseSVN的安装 二.     SVN ...

  2. SVN的安装以及和eclipse的结合使用

    SVN概述 l 通常软件开发由多人协作开发,如果对代码文件.配置文件.文档等没有进行版本控制,将会出现很多问题: l 备份多个版本,占用磁盘空间大 l 解决代码冲突困难 l 容易引发BUG l 难于追 ...

  3. svn服务器的搭建备份和还原和svnmanager的使用

    svn服务器的搭建备份和还原和svnmanager的使用 一.svn服务端软件的安装和配置 1.安装svn版本库软件 # yum install -y subversion 2.建立svn版本库数据存 ...

  4. gitlab 安装、备份与还原及常见设置

    gitlab 安装.备份与还原及常见设置 安装 安装过程比较简单,跑在 docker 上,执行命令即可 -v参数后面的值为卷的名称,自动创建数据卷(如果数据卷不存在) https://docs.git ...

  5. Ubuntu SVN客户端安装

    查看系统版本: uname -a (Linux查看版本当前操作系统内核信息) cat /proc/version (Linux查看当前操作系统版本信息) 1.首先需要安装Ubuntu SVN.Ubun ...

  6. eclipse svn插件安装方法

    eclipse svn插件安装方法 使用dropins安装插件 从Eclipse3.5开始,安装目录下就多了一个dropins目录.只要将插件解压后拖到该目录即可安装插件.比如安装svn插件subcl ...

  7. code manager tools svn服务安装配置

    svn server 安装配置: 下载地址:http://www.visualsvn.com/server/download/ 然后安装图一步一步前进: 1.点击download now: 2.点击N ...

  8. Myeclipse8.5 svn插件安装两种方式

    第一种方式:(亲测成功)第一步:准备插件包:site-1.6.18.zip解压该包里面有features和plugins文件夹,删除该包里面的xml结尾的文件. 第二:我的Myeclipse8.5安装 ...

  9. Myeclipse最简单的svn插件安装方法

    首先来这儿下载插件 http://subclipse.tigris.org/servlets/ProjectDocumentList?folderID=2240 找个最新的下载   解压到对应的位置, ...

随机推荐

  1. 创建目录命令 - mkdir

    (1) 命令名称:mkdir (2) 英文原意:make directories (3) 命令所在路径:/bin/mkdir (4) 执行权限:所有用户 (5) 功能描述:创建新目录 (6) 语法: ...

  2. android 代码设置图标背景色(圆形图标)和图标颜色

    原图: 1.改变图标颜色: mImageView.setColorFilter(Color.parseColor("#ff0000")); 效果: 2.改变图标背景色(主要是圆形图 ...

  3. AcWing 两个简单的位运算操作

    //是柱状数组的一个基操作 //返回n的最后一位1:lowbit(n) = n & -n //比如 x=1010 那么返回10 x=101000 返回1000 #include<bits ...

  4. egg.js 配置cors跨域

    1.egg简述 Egg.js,为企业级框架和应用而生,是阿里开源的企业级 Node.js 框架. 2.特点 Egg 奉行『约定优于配置』,按照一套统一的约定进行应用开发,团队内部采用这种方式可以减少开 ...

  5. Lowest Common Multiple Plus 题解

    求n个数的最小公倍数. Input输入包含多个测试实例,每个测试实例的开始是一个正整数n,然后是n个正整数. Output为每组测试数据输出它们的最小公倍数,每个测试实例的输出占一行.你可以假设最后的 ...

  6. java 中使用logback日志,并实现日志按天分类压缩保存。

    以maven项目作为构建工具为例,首先引入使用logback需要的3个依赖,需要注意使用logback是需要引入slf4j-api的,因为logback是基于slf4j的 <!--logback ...

  7. 动态IL织入框架Harmony简单入手

    Harmony是一个开放源代码库,旨在在运行时替换.修饰或修改任何现有C#方法.它的主要用在用Mono语言编写的游戏和插件,但是该技术可以与任何.NET版本一起使用.它还照顾对同一方法的多次更改(它们 ...

  8. MyBatis(6)——分页的实现

    分页的实现 a)通过mysql的分页查询语句: 说明:sql的分页语句格式为select * from aaa limit #{startIndex},#{pageSize} //---------- ...

  9. 【网易官方】极客战记(codecombat)攻略-地牢-循环又循环

    关卡连接: https://codecombat.163.com/play/level/loop-da-loop 循环真是救命恩人! 简介: 你只需要 一个 while true循环 加上 4 条语句 ...

  10. 计算几何-Andrew法-凸包

    This article is made by Jason-Cow.Welcome to reprint.But please post the article's address. 利用一下叉积和栈 ...