一.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. Java基础知识强化之集合框架笔记33:Arrays工具类中asList()方法的使用

    1. Arrays工具类中asList()方法的使用 public static <T> List<T> asList(T... a): 把数组转成集合 注意事项: 虽然可以把 ...

  2. empty函数PHP

    empty译为: adj.空的,空虚的,空洞的;空闲的,无效的,徒劳的;无聊的,愚蠢的;言语或行动空洞的 vt.(使)成为空的, 把…弄空;把…腾出来 vi.成为空的;流空 n.空车;空的东西 是PH ...

  3. 10.7 noip模拟试题

    楼[问题背景]zhx 为他的妹子造了一幢摩天楼.[问题描述]zhx 有一幢摩天楼. 摩天楼上面有 M 个观光电梯,每个观光电梯被两个整数

  4. 巧用hidden传递参数

  5. myEclipse修改deploy location

  6. tomcat发布项目时,空文件夹未发布成功

    问题背景: 项目发布到服务器时,缺少文件夹,到时向此文件夹写数据时发生错误. 后来经查,缺少这个文件夹,项目部署发布时,并不会把空文件夹发布上去 解决: 1.在空文件中加入,一个文件.就可以发布成功 ...

  7. KAFKA分布式消息系统[转]

    KAFKA分布式消息系统  转自:http://blog.chinaunix.net/uid-20196318-id-2420884.html Kafka[1]是linkedin用于日志处理的分布式消 ...

  8. Javascript的AMD规范

    Javascript发展到今天,已经从一个小丑语言变成了不可替代的前端利器,已经脱离了低端的玩笑脚步,而转变为有规可依的强大语言. 本文主要讲述下如今被大力推广的AMD规范,为什么要AMD,什么场景是 ...

  9. angular.js 简单的表达式

    <!doctype html> <html> <head> <meta charset ="utf-8"> <script s ...

  10. 【模板】【凸包】Graham_scan

    /* 唐代李白 <江夏别宋之悌> 楚水清若空,遥将碧海通.人分千里外,兴在一杯中. 谷鸟吟晴日,江猿啸晚风.平生不下泪,于此泣无穷. */ #include <iostream> ...