`
Appleses
  • 浏览: 348033 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Linux 下搭建SVN 之部署

 
阅读更多
1.下载svn安装文件

  目前最新:subversion-1.7.5.tar.gz

  下载地址:http://subversion.apache.org/download

2. 创建svn安装目录

   mkdir /u01/svnapp

3. 上传文件到服务器上解压,安装

   解压命令为:tar xfvz subversion-1.7.5.tar.gz

   解压后生成 subversion-1.7.5 子目录, 进入目录

   执行

   ./configure --prefix=/u01/svnapp/svn

   出现以下错误:
   



   提示缺失apr和apr-util,需要下载并安装

   下载地址:

    http://apache.etoak.com/apr/#mirrors

    下载最新的apr与apr-util,目前最新为

    apr-1.4.6.tar.gz 

    apr-util-1.4.1.tar.gz

4.   安装apr

     1、 上传并解压apr

         tar xfvz apr-1.4.6.tar.gz

     2、 进入目录解压目录依次执行:

         ./configure --prefix=/u01/svnapp/apr

         make

         make test

         make install

     apr安装完毕

5. 安装apr-util

   1、 上传并解压apr-util

       tar xfvz apr-util-1.4.1.tar.gz

  2、 进入目录解压目录依次执行:

     ./configure --prefix=/u01/svnapp/apr-util--with-apr=/u01/svnapp/apr

     make

     make test

     make install

     apr-util安装完毕



6.  继续安装svn

    进入svn解压目录,执行:

    ./configure --prefix=/u01/svnapp/subversion--with-apr=/u01/svnapp/apr --with-apr-util=/u01/svnapp/apr-util

    提示报错:

  

    需要安装sqlite

7.   安装sqlite

    下载地址: http://www.sqlite.org/download.html

    下载最新安装包,目前最新为sqlite-autoconf-3071300.tar.gz

    1、上传解压:

       tar xfvz sqlite-autoconf-3071300.tar.gz

    2、 进入解压目录安装:

      cd sqlite-autoconf-3071300

      ./configure --prefix=/u01/svnapp/sqlite

      make

      make install

      apr-util安装完毕

8. 继续安装svn

   进入svn解压目录,执行:

   ./configure --prefix=/u01/svnapp/subversion--with-apr=/u01/svnapp/apr --with-apr-util=/u01/svnapp/apr-util --with-sqlite=/u01/svnapp/sqlite

   提示报错:
   

   安装需要zlib,继续下载zlib

9.   安装zlib

    下载地址:http://www.zlib.net

    下载最新安装包: 目前最新为zlib-1.2.5.1.tar.gz

    1、上传并解压

       tar xfvz zlib-1.2.5.1.tar.gz

    2、进入解压目录安装:

       cd zlib-1.2.5.1

       ./configure --prefix=/u01/svnapp/zlib

      make

      make install

      zlib安装完毕

10. 继续安装svn

    进入svn解压目录,执行:

    ./configure --prefix=/u01/svnapp/subversion--with-apr=/u01/svnapp/apr --with-apr-util=/u01/svnapp/apr-util --with-sqlite=/u01/svnapp/sqlite–with-zlib=/u01/svnapp/zlib

    提示:
    

    这里我们使用FSFS方式,故不安装DB,忽略。

    继续:

    make

    如果是64位的操作系统会出现错误:
    


    进入zlib的解压目录

    执行:

    CFLAGS="-O3 -fPIC" ./configure--prefix=/u01/svnapp/zlib

    Make

    make install



    继续安装:

    ./configure --prefix=/u01/svnapp/subversion--with-apr=/u01/svnapp/apr --with-apr-util=/u01/svnapp/apr-util --with-sqlite=/u01/svnapp/sqlite–with-zlib=/u01/svnapp/zlib

   make

   make install





11. 加入svn path

    vi /etc/profile

    在文件最后面添加

    PATH=/u01/svnapp/subversion/bin:$PATH

    export path

    退出执行
     .  /etc/profile



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

   如果显示版本信息, 则安装成功.
   


   以上是在linux上安装svn服务器的步骤.



===============================SVN 之部署 ===========================
1.建立版本库目录

  建立好的版本库目录与安装目录不在同级目录下(可建立多个,新建库后以下各项都需重新配置。注意区别安装目录与版本库目录,以下讲的都是版本库目录)
   mkdir -p /u01/svnapp/svndata/repos

2.建立svn版本库

  与上面目录对应
   svnadmin create /u01/svnapp/svndata/repos

  执行此命令后svn自动在repos目录下添加必须的配置文件.

3. 修改版本库配置文件

   vi /u01/svnapp/svndata/repos/conf/svnserve.conf

   各参数功能在配置文件的注释中有说明, 此处配置如下:
    [general]
    anon-access =none      # 使非授权用户无法访问
    auth-access = write    # 使授权用户有写权限
    password-db = passwd   # 指明密码文件路径
    authz-db = authz       # 访问控制文件
    realm = /u01/svnapp/svndata/repos # 认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字。

   其它采用默认配置. 各语句都必须顶格写, 左侧不能留空格, 否则会出错. 指令简介:这是svn配置文件的格式,请按照以上格式书写。

4. 配置用户, passwd文件

   编辑passwd文件

   vi /u01/svnapp/svndata/repos/conf/passwd

   输入以下内容:
     [users]
        <用户1> = <密码1> admin = admin
        <用户2> = <密码2> username2 = password2
        可以添加多个,此为用户名密码对。

5.配置权限,authz文件

  编辑authz文件

  vi /u01/svnapp/svndata/repos/conf/authz
  

  说明:

  [groups]

  创建有2个用户组, 分别是harry_and_sally与harry_sally_and_joe

  等号右边分别是该组下的成员帐号



  [/foo/bar]  项目路径

  harry=rw     harry用户具有/foo/bar项目路径的读写权限

  &joe=r        &joe用户具有读权限

  *=             任何用户都没有权限读与写



[repository:/baz/fuz] 版本库repository中的 项目路径/baz/fuz

  @harry_and_sally=rw    harry_and_sally用户组下的用户有读写权限

  *=r                       所有帐号都有读权限
   指令简介:此配置文件采用“基于路径的授权”策略,中括号里指定路径,以下列出对各用户的授权。包括只读r,读写rw。没有列出的用户,则不允许访问。还可以对用户分   组,具体请参考svn手册,以下是简单例子:
     用户组格式:

    [groups]

    <用户组名> = <用户1>,<用户2>

    其中,1个用户组可以包含1个或多个用户,用户间以逗号分隔。

    例如:

    [repository:/]

    版本库目录格式:
     [<版本库>:/项目/目录]
     @<用户组名> = <权限>
     <用户名> = <权限>
     其中,方框号内部分可以有多种写法:
     /,表示根目录及以下。根目录是svnserve启动时指定的,我们指定/opt/svndata。这样,/就是表示对全部版本库设置权限。
     repos1:/,表示对版本库1设置权限
     repos2:/abc, ,表示对版本库2中的abc项目设置权限
     repos2:/abc/aaa, ,表示对版本库2中的abc项目的aaa目录设置权限
     权限主体可以是用户组、用户或*,用户组在前面加@,*表示全部用户。权限可以是w、r、wr和空,空表示没有任何权限。



    例1:

    [group]

    admin=test



    [repos:/]

    @admin=rw

    *=r

    注意:配置auth 、passwd和svnserve.conf一定要心细,否则客户端访问时会认证失败,如不能访问,百度和谷歌上有很多资料可供参考。配置完成,接下来该启动      svn喽:svn默认端口是3690

6.启动svn

    svnserve -d -r 版本库路径 --listen-host 服务器ip地址

    如:

    svnserve -d -r /u01/svnapp/svndata/repos --listen-host 192.168.1.101



    启动时遇到的问题:

    启动svnserve时出现cannot bind serversocket:address already in use
     解决方法:
     方法一:

    找出svnserve id 杀死掉进程

    ps ax | grep svnserve

    kill -9 id
     方法二:

    重新指定一个端口号(默认端口3690)

    svnserve -d --listen-port 3691 -r /u01/svnapp/svndata/repos



7. 检查是否启动成功

   查看是否存在svnserve 进程

   ps ax | grep svnserve

8. 安装客户端,下载客户端

   安装好后,访问服务器:svn:// 服务器ip 。

分享到:
评论

相关推荐

    Linux下搭建svn+apache

    ### Linux下搭建svn+apache知识点详解 #### 一、概述 在Linux环境下搭建Subversion (SVN) 和 Apache 的联合服务是一种常见的版本控制系统部署方案。通过Apache作为前端服务器,可以利用HTTP协议方便地进行SVN仓库...

    centos 7.9服务器 离线 搭建svn服务器

    centos 7.9服务器 离线 搭建svn服务器 ,该文章适用于 开发人员 实施人员 项目经理用于项目文档管理 代码管理,而不指定如何在centos7.9环境下离线搭建svn服务器,因为大多数的网站只是介绍yum install 的方式,但是...

    linuxsvn离线安装

    在没有网络连接的情况下,即离线状态下安装Linux SVN,需要提前下载好所有必要的依赖包,然后在本地进行安装。以下是详细的操作步骤和相关知识点: 1. **了解SVN**: SVN是一种集中式版本控制系统,它允许用户跟踪...

    linux下搭建svn服务器.doc

    在Linux环境下搭建SVN(Subversion)服务器是一种常见的版本控制系统部署方式,特别适用于团队协作开发项目。本文将详细讲解如何在Redhat5系统上使用svnserve方法来搭建SVN服务器。 首先,我们需要准备一些必要的...

    linux下搭建svn服务器(apache).pdf

    【Linux下搭建SVN服务器(Apache方式)】 在Linux系统中,Subversion(简称SVN)是一种版本控制系统,常用于管理软件开发中的源代码。Apache HTTP Server(简称Apache)是广泛应用的Web服务器,可以与SVN结合,提供...

    linux下搭建svn完整版借鉴.pdf

    在Linux环境下搭建Subversion(简称svn)服务器是一个常见的任务,特别是在团队协作开发中,用于代码版本控制。Subversion是一个集中式的版本控制系统,它允许多个人同时编辑同一个项目,并且能够跟踪每一次修改,以...

    svn服务器的搭建、部署

    搭建SVN服务器是项目协作和代码管理的基础,尤其对于团队开发来说至关重要。以下将详细介绍如何在Windows和Linux环境下搭建和配置SVN服务器。 首先,我们来看Windows环境下的搭建步骤: 1. **安装软件**: - 安装...

    svn linux下搭建

    ### Linux 下 SVN 服务器搭建详解 #### 一、前言 在软件开发过程中,版本控制系统是必不可少的工具之一。Subversion(简称SVN)作为一款经典的集中式版本控制系统,在项目管理方面发挥着重要作用。本文将详细介绍...

    Linux下安装SVN服务端

    在Linux环境中部署SVN服务器不仅可以方便地进行版本控制,还能通过网络让团队成员在不同地点协同工作。本文将详细介绍如何在Linux环境下安装并配置SVN服务端。 #### 二、安装SVN 1. **安装方式**:使用`yum`工具...

    Centos搭建SVN服务器

    ### Centos搭建SVN服务器知识点解析 #### 一、概述 在CentOS Linux环境下搭建Subversion (SVN) 服务器是一种常见的版本控制系统部署方案。它能够有效地管理代码库,为团队提供版本控制功能,便于协作开发。本文档将...

    Linux下搭建SVN服务器遇到的问题及解决方法

    1、checkout时,提示:URL svn://IP/svntest doesn't exist…  奇怪,怎么会提示库不存在呢?肯定是哪里配置问题。后来尝试了半天,也在网上搜索了很久,终于发现问题所在。  如果你的svn库的路径为:/home/svn/...

    SVN服务器搭建 本文档主要是用来介绍如何搭建SVN服务

    文档摘要:本篇文档详细介绍了如何在Linux环境中搭建SVN(Subversion)服务器,主要针对的是Subversion 1.3.2版本的安装与配置,适用于Redhat Linux AS 5.3操作系统。文档包含了安装前的准备、安装过程以及必要的...

    搭建SVN + Apache 服务器

    ### 搭建SVN + Apache 服务器 ...以上步骤详细介绍了如何在Linux 6.5环境下搭建SVN + Apache服务器的过程。通过这些步骤,你可以搭建起一个稳定且易于管理的SVN服务器,方便团队成员进行版本控制和协作开发。

    linux下SVNServer搭建.pdf

    在Linux环境下,搭建SVNServer主要是为了创建一个集中式的版本控制系统,使得开发者可以协同工作,管理代码变更。本文档将详细介绍如何使用svnserve服务来构建SVN代码仓库,并允许远程用户进行访问。 首先,SVN...

    centos7一键搭建svn

    【标题】:“CentOS7一键搭建SVN” 在IT行业中,版本控制系统对于团队协作和项目管理至关重要,Subversion(简称SVN)就是其中的一种。在Linux系统,特别是CentOS7环境下,手动安装和配置SVN可能较为繁琐。本文将...

    linux+svn+apache安装配置部署

    通过以上步骤,我们不仅完成了Subversion在Linux上的独立安装与配置,还成功地将Apache与Subversion相结合,搭建了一个功能完整的SVN服务器。这样的服务器不仅可以提供版本控制服务,还可以通过Web界面方便地管理和...

Global site tag (gtag.js) - Google Analytics