SVN

  SVN:SVN是Subversion的简称,是一种开放代码的版本控制系统,相比较RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制器服务已从CVS迁移到Subversion。

环境与原料

 操作系统:Linux(CentOS版)

 svn版本:subversion-1.9.3.tar.gz(下载地址:http://subversion.apache.org/download)

 arp软件:apr-1.5.2.tar.gz(下载地址:http://apache.fayea.com//apr/apr-1.5.2.tar.gz)

arp-util软件:apr-util-1.5.4.tar.gz(下载地址:http://apache.fayea.com//apr/apr-util-1.5.4.tar.gz)

 SQLite数据库:sqlite-autoconf-3100200.tar.gz(下载地址:http://www.sqlite.org/download.html);

zlib库:zlib-1.2.8.tar.gz(下载地址:http://www.zlib.net)

编译安装

  1.  解压压缩包到/usr/svn目录,命令:tar -zxvf subversion-1.9.3.tar.gz -C /usr/svn/

   2. 进入安装包下,执行检查环境操作,命令:./configure --prefix=/usr/svn/subversion

         执行检查环境命令的时候可能会报错:APR not found(apache的一个运行库未找到)

         

    下载apr-1.5.2.tar.gz(下载地址:http://apache.fayea.com//apr/apr-1.5.2.tar.gz);

    • 解压arp: tar xfvz apr-1.5.2.tar.gz -C /usr/svn/
    • 进入apr目录:cd /usr/svn/apr-1.5.2
    • 执行配置命令:./configure --prefix=/usr/svn/apr
    • 执行命令:make
    • 安装命令:make install(安装错误可以使用make clean清空)

      下载apr-util-1.5.4.tar.gz(下载地址:http://apache.fayea.com//apr/apr-util-1.5.4.tar.gz);

    • 解压arp: tar xfvz apr-util-1.5.4.tar.gz -C /usr/svn/
    • 进入apr目录:cd /usr/svn/apr-util-1.5.4
    • 执行配置命令:./configure --prefix=/usr/svn/apr-util --with-apr=/usr/svn/apr
    • 执行命令:make
    • 安装命令:make install

      进入svn解压目录,再次执行检查环境操作,命令:./configure --prefix=/usr/svn/subversion --with-apr=/usr/svn/apr --with-apr-util=/usr/svn/apr-util

      可能报错:  Subversion requires SQLite(svn需要SQLite数据库)

          

    下载sqlite-autoconf-3100200.tar.gz(下载地址:http://www.sqlite.org/download.html);

    • 解压arp: tar xfvz sqlite-autoconf-3100200.tar.gz -C /usr/svn/
    • 进入apr目录:cd /usr/svn/sqlite-autoconf-3100200
    • 执行配置命令:./configure  --prefix=/usr/svn/sqlite
    • 执行命令:make
    • 安装命令:make install

      进入svn解压目录,再次执行检查环境操作,命令:./configure --prefix=/usr/svn/subversion --with-apr=/usr/svn/apr --with-apr-util=/usr/svn/apr-util

                                                                      --with-sqlite=/usr/svn/sqlite

    可能报错:  Subversion requires zlib(svn需要zlib)

    

      下载zlib-1.2.8.tar.gz(下载地址:http://www.zlib.net);

    • 解压arp: tar xfvz zlib-1.2.8.tar.gz -C /usr/svn/
    • 进入apr目录:cd /usr/svn/zlib-1.2.8
    • 执行配置命令:./configure  --prefix=/usr/svn/zlib
    • 执行命令:make
    • 安装命令:make install

      进入svn解压目录,再次执行检查环境操作,命令:./configure --prefix=/usr/svn/subversion --with-apr=/usr/svn/apr --with-apr-util=/usr/svn/apr-util

                                                                      --with-sqlite=/usr/svn/sqlite --with-zlib=/usr/svn/zlib

  3. 在svn解压目录下,执行命令:make

  4. 在svn解压目录下,执行安装命令:make install

  5. 将svn加入PATH中

      • 打开profile文件:vi /etc/profile 
      • 在文件最后面添加:  export PATH=/usr/svn/subversion/bin:$PATH
      • 退出保存并执行执行:. /etc/profile    

    6. 测试SVN是否安装成功,执行:    svnserve --version

    

  7. 创建代码库

    • 创建仓库文件夹,执行命令:mkdir /usr/svn/svn-repository
    • 创建代码库,执行命令: svnadmin create /usr/svn/svn-repository/

    执行上面的命令后,查看/usr/svn/svn-repository文件夹发现包含了conf, db,format,hooks, locks, README.txt等文件,说明一个SVN库已经建立

       、

      • conf目录:代码库的配置文件
      • db目录:数据文件
      • hooks(钩子)目录:钩子程序目录,可以放入触发器,放置hook脚本文件的目录
      • locks目录:用来放置subversion的db锁文件和db_logs锁文件的目录,用来追踪存取文件库的客户端
      • format:是一个文本文件,里面只放了一个整数,表示当前文件库配置的版本号
      • README:读我文件

  8. 配置用户名和密码以及SVN服务配置

    进入代码库中的配置文件目录/usr/svn/svn-repository,修改文件passwd,在后面加上用户名和密码,格式:用户名=密码;

    • 进入配置文件目录,执行命令:cd  /usr/svn/svn-repository/conf/
    • 创建代码库,执行命令: vi passwd

    

    进入代码库中的配置文件目录/usr/svn/svn-repository,修改文件authz;

    • 进入配置文件目录,执行命令:cd  /usr/svn/svn-repository/conf/
    • 创建代码库,执行命令: vi authz
      • 创建用户组,在[groups]后面加上,组名 = 成员名1,成员名2
      • 给用户授权,在[/]某目录下授权,成员名 = 权限
      • 给用户组授权,在[respository:/]某目录下授权([<版本库>:/项目/目录] ),@组名 = 权限

    / 表示对根目录下的所有子目录范围设置权限;

    *=表示除了上面设置的权限用户组以外,其他所有用户都设置空权限,空权限表示禁止访问本目录,这很重要一定要加上。

    注意:对权限配置文件的修改立即生效,不必重启svn。

        

   进入代码库中的配置文件目录/usr/svn/svn-repository,修改文件svnserve.conf;

    • 进入配置文件目录,执行命令:cd  /usr/svn/svn-repository/conf/
    • 创建代码库,并进行一下修改,执行命令: vi svnserve.conf
    • 加入一下内容:

      [general]

      anon-access = none
      auth-access = write
      password-db = passwd
      authz-db = authz

      realm = my-svn-repository

      

  9. 启动SVN服务

    启动服务命令:svnserve -d --listen-port 3690 -r /usr/svn/svn-repository

云安装

  运行命令:yum -y install subversion

  

  检查版本,命令:svnserve --version

  

  更新版本,命令:yum update subversion

  

  建代码库同上,第8步骤

    

【Linux】SVN的安装和配置的更多相关文章

  1. linux下svn的安装与配置

    ---恢复内容开始--- linux下svn的安装与配置 Linux发行版本:CentOS6.5 1.安装subversion sudo yum -y install subversion 2.创建s ...

  2. Linux FTP的安装与配置

    Linux FTP的安装与配置   ftp安装部分,操作步骤如下: 可以使用yum命令直接安装ftp # yum install vsftpd ftp服务的开启与关闭命令: 开启:# service  ...

  3. Linux版OpenVPN安装、配置教程(转)

    本文将以目前最新的openvpn-2.3.4.tar.gz(更新于2014-5-2,下载地址)为例来介绍如何在Linux系统中安装.配置及使用OpenVPN. 在这里,我们选用了一台预装CentOS ...

  4. Linux FTP的安装与配置(转)

    Linux FTP的安装与配置   ftp安装部分,操作步骤如下: 可以使用yum命令直接安装ftp # yum install vsftpd ftp服务的开启与关闭命令: 开启:# service  ...

  5. 在Linux上怎么安装和配置Apache Samza

    samza是一个分布式的流式数据处理框架(streaming processing),它是基于Kafka消息队列来实现类实时的流式数据处理的.(准确的说,samza是通过模块化的形式来使用kafka的 ...

  6. Linux下MySQL安装和配置

    --Linux下MySQL安装和配置 ---------------------------2014/05/18 Linux下MySQL的配置和安装 本文的安装采用 rpm 包安装 1.首先在官网下载 ...

  7. redis 在Linux下的安装与配置

    redis在Linux下的安装与配置 by:授客  QQ:1033553122 测试环境 redis-3.0.7.tar.gz 下载地址: http://redis.io/download http: ...

  8. Linux FreeTDS的安装与配置

    Linux FreeTDS的安装与配置 一.简介 官方网站:http://www.freetds.org 版本:0.64 下载地址:http://ibiblio.org/pub/Linux/ALPHA ...

  9. Tomcat——Linux下的安装和配置

    Tomcat在Linux上的安装与配置 以下使用的Linux版本为: Redhat Enterprise Linux 7.0 x86_64,Tomcat版本为tomcat-7.0.54. 1.下载JD ...

  10. Linux中Nginx安装与配置详解

    转载自:http://www.linuxidc.com/Linux/2016-08/134110.htm Linux中Nginx安装与配置详解(CentOS-6.5:nginx-1.5.0). 1 N ...

随机推荐

  1. bootstrap修改勾选样式

    小对勾需要引入awesome插件. css部分: .bella-checkbox{ position: relative;}/** 将初始的checkbox的样式改变 */.bella-checkbo ...

  2. JAVA 文件与base64之间的转化, 以及Web实现base64上传文件

    <1>文件与base64字符串之间的转化 package servlet_file_upload; import java.io.File; import java.io.FileInpu ...

  3. 基于OpenGL编写一个简易的2D渲染框架-01 创建窗口

    最近正在学习OpenGL,我认为学习的最快方法就是做一个小项目了. 如果对OpenGL感兴趣的话,这里推荐一个很好的学习网站 https://learnopengl-cn.github.io/ 我用的 ...

  4. egret-初步接触

    class HelloTime extends egret.DisplayObjectContainer { public constructor() { super(); this.addEvent ...

  5. Python Env

    简介: 记录 CentOS 6.x Python 环境的安装步骤. 一.安装依赖包 shell > yum -y install epel-release shell > yum -y i ...

  6. Python线程优先级队列(Queue)

    Python的Queue模块中提供了同步的.线程安全的队列类,包括FIFO(先入先出)队列Queue,LIFO(后入先出)队列 LifoQueue,和优先级队列PriorityQueue.这些队列都实 ...

  7. java编写一个汽车类,有属性:品牌、型号、排量、速度,有方法:启动、加速、转弯、刹车、息火

    /* * 汽车实体类 * 类里面有属性和方法 */public class Car {    String  brand;   //汽车品牌    String modelNumber; //汽车型号 ...

  8. 常用类一一时间处理相关类一一java.util.Tomezone(java.util.Calendar , java.util.Date , java.text.DateFormat)

    时间处理相关类 时间是一个一维的东东.所以,我们需要一把刻度尺来区表达和度量时间.在计算机世界,我们把1970 年 1 月 1 日 00:00:00定为基准时间,每个度量单位是毫秒(1秒的千分之一). ...

  9. 重学Java

    Java web 的课程告一段落了 现在我觉得我应该重新学习一下 Java基础  先分享下昨天学习递归后写的两个短短的代码 1.求5的阶乘 package test; public class fiv ...

  10. do{}while() ;异常语句

    //while (true) //只要括号里面是true(正确的如:(1==1)),就会无限循环 //{ //} //do{}while() //不管while满足与否,首先先做一遍 //然后去看wh ...