参考资料:

svn攻略: http://blog.csdn.net/colinchan/article/details/1865154

错误解决:http://hi.baidu.com/anglem/item/f3e82b0ac057c2d572e67670

创建版本库:http://www.if-not-true-then-false.com/2010/install-svn-subversion-server-on-fedora-centos-red-hat-rhel/

步骤:

1、httpd安装

2、svn安装

3、配置

4、使用

5、Tortoise SVN使用方法

1、httpd安装

编译安装apr/apr-util等依赖包

下载apache源码,安装如下:

注意:安装附加参数 dav

  • ./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config --enable-modules=so

--enable- dav --enable-maintainer-mode --enable-rewrite

注:

我在尝试apache 2.2.27 时正常,尝试apache2.4.9 编译完成之后,修改httpd.conf ,重启,经常提示错误!,同时apache 2.2.27 按照如上configuration

之后,查看Apache目录,modules没有编译生成的.so 文件....很是神奇!!?

  • make
  • make install

检查dav_module 是否安装

2、svn安装

准备工作:

1、 下载neon,解压到subversion文件夹中,重命名为neon

2、下载sqlite,提取其中sqlite3.c 文件放置于subversion sqlite-amalgamation文件夹中
              

  • ./configure --prefix=/usr/local/svn --with-apxs=/usr/local/apache2/bin/apxs --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config --with-ssl --with-zlib --enable-maintainer-mode
  • make
  • make   install

安装之后,查看svn版本信息如下:

3、配置

  • 拷贝svn模块到apache模块目录下
             cp /data/subversion-1.4.5/subversion/mod_dav_svn/.libs/mod_dav_svn.so /usr/local/apache2/modules/
             cp /data/subversion-1.4.5/subversion/mod_authz_svn/.libs/mod_authz_svn.so /usr/local/apache2/modules/
  • 编辑httpd.conf
           LoadModule dav_svn_module modules/mod_dav_svn.so
           LoadModule authz_svn_module modules/mod_authz_svn.so

放置如下信息,与httpd.conf 最后:
             <Location /svn>
                 DAV svn
                 SVNParentPath /data/svn
            </Location>

  • 运行htpasswd添加用户和密码
                /usr/local/apache2/bin/htpasswd -cm /data/svn/svn-auth-file chenmin
               /usr/local/apache2/bin/htpasswd -m /data/svn/svn-auth-file admin
  • 再次编辑httpd.conf        
    <Location /svn>
    DAV svn
    SVNParentPath /data/svn
    AuthType Basic
    AuthName "Subversion repository"
    AuthUserFile /data/svn/svn-auth-file
    Require valid-user
    AuthzSVNAccessFile /data/svn/svn-access-file
    </Location>

注:

我的SVN配置:

  • 其中svn-auth-file是认证文件,存储用户名和密码,svn-access-file是访问权限文件,规定各个目录的访问者的权限, 示例的权限分配的文件的格式如下。

    [groups]
    
    admin = john, kate
    devteam1 = john, rachel, sally
    devteam2 = kate, peter, mark
    docs = bob, jane, mike
    training = zak # Default access rule for ALL repositories
    # Everyone can read, admins can write
    [/]
    * = r
    @admin = rw # Allow developers complete access to their project repos [proj1:/]
    @devteam1= rw [proj2:/]
    @devteam2 = rw [bigproj:/]
    @devteam1 = rw
    @devteam2 = rw
    trevor = rw # Give the doc people write access to all the docs folders [/trunk/doc]
    @docs = rw # Give trainees write access in the training repository only [TrainingRepos:/]
    @training = rw

我的权限管理设置如下:(svn-access-file)

我的密码管理如下:(svn-auth-file)

权限配置文件中,关键的几个概念是:目标和权限,也就是为谁分配什么样的权限。读为r,写为w,如果没有权限那么什么也不写即可。

4、使用:

创建版本库:

5、Tortoise SVN使用

参考地址:http://blog.csdn.net/xjbzju/article/details/6737328

注意:

使用svn服务器时,tortoise访问服务器的权限配置在具体项目的仓库中,另外使用tortoise前,需要启动svnserve  方法:

/usr/local/svn/svnserve -d -r /home/svn/repos

即配置如上文件authz、passwd、svnserve.conf

authz配置用户访问权限:

passwd配置用户名密码:

svnserve.conf 配置:

注:

使用中更改项目文件db 的权限,否则可能会出现 “不能打开/home/svn/repos/db/txn-current-lock 权限不足”的错误

解决办法:

chmod -R 777 db/

【CentOs】搭建svn服务器的更多相关文章

  1. [记录]CentOS搭建SVN服务器(主从同步)

    CentOS搭建SVN服务器(主从同步)1.安装步骤如下: 1)安装: #yum install subversion 2)查看安装位置: #rpm -ql subversion 3)查看版本: #/ ...

  2. CentOS搭建SVN服务器,并通过Apache HTTP方式访问

    摘要:本文主要讲述了在centos 6.5环境下搭建svn服务器,可通过svn:\\IP方式访问.同时由于部分公司内网端口限制,并不能访问外网的svn服务器,所以特地结合了apache服务器,使得可以 ...

  3. 【svn】Centos搭建svn服务器环境

    1.需求描述 在Centos系统中搭建svn服务器环境 2.搭建过程 2.1 yum安装svn [root@localhost /]# yum install svn  2.2 新建目录存储svn目录 ...

  4. CentOS 搭建 SVN 服务器 及使用教程

    服务器与客户端 1.搭建SVN服务器 ① CentOS安装SVN 命令: yum -y install subversion 检查是否安装成功 命令: svn --version 如果显示如下内容说明 ...

  5. centos搭建svn服务器

    1.在centos6.5上面搭建svn服务器,安装svn服务器:yum install subversion 2.在任意目录下创建仓库目录,这里放在/data/mypros目录下 3.执行命令:svn ...

  6. Linux(CentOS)搭建SVN服务器全攻略

    虽然在windows上搭建SVN很简单,但是效能却不高,这当然是和linux相比了.然而在linux上搭建SVN却非常繁琐,所以今天这篇文章就来一步一步教您如何在Centos上搭建SVN 安装#yum ...

  7. 使用Linux(CentOS)搭建SVN服务器全攻略

    虽然在windows上搭建SVN很简单,但是效能却不高,这当然是和linux相比了.然而在linux上搭建SVN却非常繁琐,所以今天这篇文章就来一步一步教您如何在Centos上搭建SVN 安装 #yu ...

  8. Centos搭建SVN服务器三步曲

    搭建SVN服务,有效的管理代码,以下三步可以快速搞定.1.安装 #yum install subversion 判断是否安装成功#subversion -v svnserve, version 1.6 ...

  9. centos搭建svn 服务器 并同步到web 目录(总结)

    配置搭建步骤: Linux平台的SVN服务器的配置及搭建 从本地提交代码到svn代码库. 将代码库中代码同步到web目录: 1.在web目录中checkout版本库 进入/home/www目录下  ( ...

  10. CentOS搭建svn服务器支持https访问

    在CentOS6.3 64位机器上配置SVN服务器,并设置只允许HTTPS连接,可以配置多个repos源,每个源都拥有自己的组和成员,用于权限控制. 安装相关软件 Apache yum install ...

随机推荐

  1. SQL Server编程(04)基本语法

    一.定义变量 --简单赋值 declare @a int set @a=5 print @a   --使用select语句赋值 declare @user1 nvarchar(50) select @ ...

  2. 第一节 MongoDB介绍及下载与安装

    引言 MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的.他支持的数据结构非常松散,是类似json的bjson格式,因此可以存储比较复杂的数据类 ...

  3. 电商、商城类APP常用标签"hot"--第三方开源--LabelView

    LabelView是在github上一个开源的标签库.其项目主页是:https://github.com/linger1216//labelview LabelView为一个TextView,Imag ...

  4. scala学习资料

    强烈推荐一个s在线学习scala的网站: http://zh.scala-tour.com/#/overview

  5. 计算系数 (codevs 1137) 题解

    [问题描述] 给定一个多项式(ax + by)^k,给定a.b.k.n.m,请求出多项式展开后x^n y^m项的系数. [样例输入] 1 1 3 1 2 [样例输出] 3 [解题思路] 本题为NOIP ...

  6. STM32F0xx_TIM输入捕获(计算频率)配置详细过程

    前言 关于STM32的定时器,可谓是功能强大,估计没有多少人研究完STM32定时器的所有功能(包括我也没有),只是使用常用的一些功能,后续我会推出关于STM32定时器的更多功能. STM32芯片多数为 ...

  7. mysql基本知识---20151127-2

    12.日期计算 YEAR( ).MONTH( )和DAYOFMONTH( ).CURDATE().RIGHT() 1>mysql> SELECT name, birth, CURDATE( ...

  8. SRF之数据访问

    数据访问组件实现实体类和数据表映射.SQL语句配置执行.动态sql语句等功能,ORM方式能实现简单的对象和表的映射(配置类似hibernate),但比较单一(不支持一对多.多对多的情况),下边不做介绍 ...

  9. Windows上搭建android开发环境

    在搭建android开发环境时需要四部分内容,框架如下 其中Java SDK和Eclipse在java4android中有过介绍,重点介绍ADT和Android SDK的安装. 安装Android S ...

  10. UILabel的相关属性设置

    在iOS编程中UILabel是一个常用的控件,下面分享一下UILabel的相关属性设置的方法. 很多学习iOS6编程都是从storyboard开始,用到UILabel时是将控件拖到storyboard ...