一.SVN介绍

SVN是一个版本控制工具,Subversion的版本库(repository),就是位于服务器,统一管理和储存数据的地方。

二.SVN数据存储方式

在Subversion中,版本库的数据存储有两种方式:一种是在Berkeley DB数据库中存放数据;另一种是普通文件,采用自定义的格式来存储,称为FSFS。

三.SVN搭建

1.所需软件包

httpd-2.2.27.tar.gz

apr-1.5.1.tar.gz

apr-util-1.5.3.tar.gz

sqlite-amalgamation-3.6.17.tar.gz

subversion-1.8.10.tar.gz

2.安装软件包

2.1 安装apache

# tar zxf httpd-2.2.27.tar.gz

# cd httpd-2.2.27

# ./configure --prefix=/app/sinova/apache --enable-dav --enable-so --enable-modules=most

# make

# make install

2.2 安装apr、apr-util

# tar zxf apr-1.5.1.tar.gz

# cd apr-1.5.1

# ./buildconf   #验证系统是否已经安装python、autoconf、libtool,如果没有安装,使用yum或rpm方式安装相应包即可。

验证正确的如下:

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

# make

# make install

# tar zxf apr-util-1.5.3.tar.gz

# cd apr-util-1.5.3

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

# make

# make install

2.3 安装sqlite

# tar zxf sqlite-amalgamation-3.6.17.tar.gz

# cd sqlite -3.6.17

# ./configure --prefix=/usr/local/sqlite

# make

# make install

2.4 安装svn

# tar zxf subversion-1.8.10.tar.gz

# cd subversion-1.8.10

# ./configure --prefix=/app/svn --with-apxs=/app/sinova/apache/bin/apxs --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config --with-sqlite=/usr/local/sqlite/ --with-openssl --with-zlib --enable-maintainer-mod

# make

# make install

configure时遇到错误:

get the sqlite 3.7.15.1 amalgamation from:

http://www.sqlite.org/sqlite-amalgamation-3071501.zip

unpack the archive using unzip and rename the resulting

directory to:

/app/soft/subversion-1.8.10/sqlite-amalgamation

configure: error: Subversion requires SQLite

解决办法:

如果服务器不能联网,下载http://www.sqlite.org/sqlite-amalgamation-3071501.zip,然后上传至服务器。解压

# unzip sqlite-amalgamation-3071501.zip

# cp sqlite-amalgamation-3071501/* /app/soft/sqlite -3.6.17/

然后重新安装sqlite后再configure。

四. 配置SVN与apache

1.创建svn项目仓库

# mkdir /app/svnroot/ltzb    #创建svn根目录

# /app/svn/bin/svnadmin create /app/svnroot/ltzb/test

2.创建权限配置文件

# vi /app/svnroot/ltzb/authz.conf  #添加如下内容

[/]

* = r   #表示对所有的用户开放读的权限

[test:/]

liyizhen = rw  #表示用户liyizhen对仓库test有读写权限。

3.创建用户认证文件

# /app/sinova/apache/bin/htpasswd -c /app/svnroot/ltzb/authfile Eivll0m

4.svn安装完成后,会在/app/svn/libexec目录下产生mod_authz_svn.so和mod_dav_svn.so这两个模块,将这两个模块文件拷到apache模块目录下。

# cp /app/svn/libexec/* /app/sinova/apache/modules/   #设置到权限问题使用root用户来操作,然后赋权给相应用户。

5.编辑httpd.conf文件,修改如下内容:

User sinova     #修改

Group sinova    #修改

ServerName www.example.com:80    #去掉本行前面的注释

LoadModule dav_svn_module     modules/mod_dav_svn.so   #添加

LoadModule authz_svn_module   modules/mod_authz_svn.so  #添加

以下内容在最后添加:

<Location /ltzb>

DAV svn

SVNParentPath "/app/svnroot/ltzb"

AuthzSVNAccessFile "/app/svnroot/ltzb/authz.conf"

AuthType Basic

AuthName "Subversion.zoneyump"

AuthUserFile "/app/svnroot/ltzb/authfile"

Require valid-user

</location>

6.启动apache,关于iptables,selinux等

# sudo /app/sinova/apache/bin/apachectl start

五.使用SVN客户端测试

1.通过浏览器访问svn,在地址栏中输入http://192.168.0.105/ltzb/test

2.通过windows下的TortoiseSVN客户端

在E盘或其它盘中新建一个目录test(名称自定),进入该目录,鼠标右键选择SVN cheakout...

使用此客户上传遇到的错误:SVN Can’t open file ‘/home/svn/db/txn-current-lock’错误

解决方法:

chmod –R o+rw /app/svnroot/ltzb/test

SVN服务器搭建(与apache整合)的更多相关文章

  1. Windows下SVN服务器搭建方法整理(apache)

    http://skydream.iteye.com/blog/437959 http://www.cnblogs.com/liuke209/archive/2009/09/23/1572858.htm ...

  2. 版本控制-svn服务器搭建和常用命令(centos 6.3)

    Svn是比较优秀的版本控制工具,虽然功能和性能上无法和Git媲美,但由于其容易搭建和使用的特性,所以在各个小公司还是很受欢迎的.使用Git可参考<版本控制-Git服务器搭建和常用命令使用> ...

  3. SVN服务器搭建和使用(一)

    SVN服务器搭建和使用(一) Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说. 首先来下载和搭建SVN服务器. 现在Subversion已经迁移到apache网站上 ...

  4. SVN服务器搭建和使用(一)(转)

    SVN服务器搭建和使用(一) Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说. 首先来下载和搭建SVN服务器. 现在Subversion已经迁移到apache网站上 ...

  5. SVN服务器搭建--Subversio与TortoiseSVN的配置安装

    SVN服务器搭建和使用(一) Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说. 首先来下载和搭建SVN服务器. 现在Subversion已经迁移到apache网站上 ...

  6. SVN服务器搭建和使用

    SVN服务器搭建和使用 Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说. 首先来下载和搭建SVN服务器. 现在Subversion已经迁移到apache网站上了,下 ...

  7. SVN服务器搭建(1)

    转自:http://www.cnblogs.com/xiaobaihome/archive/2012/03/20/2407610.html SVN服务器搭建和使用(一) Subversion是优秀的版 ...

  8. SVN服务器搭建和配置使用详解

    SVN服务器搭建和使用(一) Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说. 首先来下载和搭建SVN服务器. 现在Subversion已经迁移到apache网站上 ...

  9. Win7 x64 svn 服务器搭建

    SVN服务器搭建和使用   Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说. 首先来下载和搭建SVN服务器. 现在Subversion已经迁移到apache网站上了 ...

  10. windows SVN 服务器搭建

    一.SVN服务器搭建和使用  1.     首先来下载和搭建SVN服务器,下载地址如下: http://subversion.apache.org/packages.html#windows,进入网址 ...

随机推荐

  1. linq学习笔记:将List<T> 转换为 Dictionary<T Key,T Value>

    运用Linq,将List<T> 转换为 Dictionary<T Key,T Value> 即:List<T>  ToDictionary<T Key,T V ...

  2. 自己动手写一个iOS 网络请求库的三部曲[转]

    代码示例:https://github.com/johnlui/Swift-On-iOS/blob/master/BuildYourHTTPRequestLibrary 开源项目:Pitaya,适合大 ...

  3. UITapGestureRecognizer会屏蔽掉Button的点击事件( 转载)

    UITapGestureRecognis 前几天在做项目的时候,遇到这个一个问题,在一个视图也就是UIView上添加一个手势,然后又在这个View上添加一个UIButton,然后给按钮添加事件,运行项 ...

  4. 『重构--改善既有代码的设计』读书笔记----Remove Middle Man

    如果你发现某个类做了过多的简单委托动作,你就可以考虑是否可以让客户直接去调用受托类.在Hide Delegate中,我们介绍了封装受托对象的好处,但好处归好处也存在代价,就是当你每次需要在受托对象中增 ...

  5. phpcms v9用get-sql调用数据表中的图组图片示例代码

    {pc:get sql="SELECT pictureurls FROM phpcms_picture_data where id = $id" start="0&quo ...

  6. ICE学习第二步-----从第一个程序了解ICE(HelloWorld)

    ICE(Internet Communications Engine)是一种面向对象的中间件平台,主要用于网络通讯.它为面向对象的“客户端-服务器”模型的应用提供了一组很好的工具和API接口.目前在全 ...

  7. php && 逻辑与运算符使用说明

    例子:!defined('MAGIC_QUOTES_GPC') && define('MAGIC_QUOTES_GPC', get_magic_quotes_gpc()); o(︶︿︶ ...

  8. python变量不能以数字打头

    在编写python函数时,无意中发现一个问题:python中的变量不能以数字打头,以下函数中定义了一个变量3_num_varchar,执行时报错. 函数如下: def database_feild_v ...

  9. 解读为什么有符号的char可表示范围是-128~+127

    问:为什么有符号的char可表示范围是-128~+127? 要明白这个问题,首先要明白一下几点: 对于char和int计算机中以补码形式存在. 严格来说计算机就是傻逼,它只知道某个位上是0还是1. 我 ...

  10. yii2 日志(log)的配置与使用

    原文地址: http://blog.csdn.net/gao_yu_long/article/details/51732181