安装svn:

依赖包: yum install openssl openssl-devel

问题(可以忽略不计):configure: WARNING: we have configured without BDB filesystem support

1.下载安装包(一般我放到/usr/local/src/package/目录下面):

  wget http://subversion.tigris.org/downloads/subversion-1.6.1.tar.gz

  wget http://subversion.tigris.org/downloads/subversion-deps-1.6.1.tar.gz

2.解压下载好的两个文件(两个解压到一个目录,无需创建两个目录)

  tar -zxvf subversion-1.6.1.tar.gz

  tar -zxvf subversion-deps-1.6.1.tar.gz

3.进入解压目录:cd subversion-1.6.1/

4.编译安装:./configure --prefix=/usr/local/svn  make && make install

5.安装成功后获取一下svn的版本信息:/usr/local/svn/bin/svnserve --version

6.将svn的bin目录加到环境变量中去:

  PATH=$PATH:/usr/local/svn/bin

  export PATH

7.建立一个svn的根目录,项目不止一个:

  mkdir -p /home/zgw/www/(这里随你,可以建成/home/www/)

8.建立仓库:

  svnadmin create /home/zgw/www/repos/

9.递归导入工程到版本库:

  svn import svntest file:///home/zgw/www/repos -m "Initial repository test"

10.修改svnserve.conf(在仓库目录下面的conf目录下面/home/zgw/www/repos/conf):

  [general]

  anon-access = none(一开始是read,改成none)

  auth-access = write

  password-db = passwd(去掉前面注释,去读取passwd文件的账户信息)

  authz-db = authz(去掉前面的注释,去读取authz文件的配置信息)

  realm = /home/zgw/www/repos(认证空间)

11.目录控制文件authz:

  [groups]

  admin=zgw(创建一个admin组,并指定某些用户为该组的组员)

  [repos:/](制定目录下的权限)

  @admin = rw(admin组的用户权限)

  * = r(其他人的权限)

12.编辑用户密码passwd文件:

  [users]

  zgw = 123456(指定用户zgw的密码是123456)

13.启动svn(因为可能有多个项目,所以就启动多版本,如果是单一版本):

  多版本:svnserve -d -r /home/zgw/www

  单一版本:svnserve -d -r /home/zgw/www/版本控制器名称

14.检出代码:比如项目目录lift(检出svn的代码到项目目录)

  cd /home/zgw/www/lift/

  svn co svn://127.0.0.1/repos ./ --username zgw(zgw是svn账户)

15.编辑钩子(zgw是svn账户)

  cd /home/zgw/www/repos/(svn目录版本目录)

  touch post-commit

  将一下内容编辑到post-commit中:

    #!/bin/bash

    export LANG="zh_CN.UTF-8"

    /usr/local/svn/bin/svn update /home/zgw/www/lift/ --username zgw --password 123456

  (这里注意一下:如果写错svn update /home....会报错:提示找不到svn命令,这时候直接找到svn安装目录下的bin目录下有个svn的二进制文件,直接使用pwd获取路径写到post-commit文件--标红的就是)

  修改权限:chmod 777 /home/zgw/www/repos/hooks/post-commit

16.启动svn: 
  svnserve -d -r /home/data/svn/ 
  其中 -d 表示守护进程, -r 表示在后台执行 
  /home/data/svn/  为svn的版本控制目录

17.关闭svn:

  这里采取linux杀死进程的方式处理的 
  ps -ef|grep svnserve 
  root      4967     1  0 Aug23 ?        00:00:00 svnserve -d -r repository/  
  这里  kill -9 4967杀死进程, 此4967为进程号

svn搭建(linux下)的更多相关文章

  1. 【SVN】Linux下svn搭建配置全过程——初学者轻松上手篇

    版本控制主要用到的是git和svn,其中svn界面化使用操作简单,本篇简单介绍SVN搭建配置全过程. 1. 下载并安装 yum install subversion 查看版本 svnserve --v ...

  2. 搭建Linux下的SVN服务器

    ______________________________________________配置SVN步骤______________________________________________ ...

  3. svn 在linux 下的一些常用命令

    最近在Linux系统下玩一些svn的东西,感觉脑袋很乱, 于是整理了一下一些初学者必须弄明白的基本命令: 1. svn --version: 查看Linux系统下的svn client版本. Clie ...

  4. 搭建 Linux 下 GitLab 服务器

    转自:http://blog.csdn.net/passion_wu128/article/details/8216086 目录: 平台需求 硬件需求 本安装指南已于 DebianUbuntu 测试通 ...

  5. svn之——linux下清除svn的用户名和密码

    问题:之前用的svn账号权限不够,需要使用别的账号,所以提出需求——怎么使用新的svn账号进行操作 方法一: linux下删除~/.subversion/auth即可清除之前的用户名和密码:rm -r ...

  6. 搭建 Linux 下 GitLab 服务器(转)

    这两天因为项目需求需要搭建一个GitLab服务器,遇到了很多问题,参考了很多网络资料,终于搭建成功,在此把这个过程记录一下,利人利己. 一.最终目的 1,在Linux下创建GitLab服务器,客户端能 ...

  7. Linux系统下LNMP一键搭建Linux、PHP、MySQL环境(适合新手搭建linux下的web生成环境)

    一. 首先要解释一下,什么是LNMP,LNMP起源于LAMP,LAMP是Linux+Apache+Mysql/MariaDB+Perl/PHP/Python的缩写,这里将Web服务端的Apache替换 ...

  8. 搭建 Linux 下 GitLab 服务器【转】

    转自:http://blog.csdn.net/passion_wu128/article/details/8216086 版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[-] 平台 ...

  9. SVN:linux下搭建svn服务器

    转载:https://www.cnblogs.com/puloieswind/p/5856326.html 1. 安装SVN服务器: 检查是否已安装 # rpm -qa subversion 安装SV ...

随机推荐

  1. 从constructor中抛出exception后,constructor会返回null吗?

    刚才琢磨这个问题主要是在想,如果constructor抛出了exception,那么返回的object是什么一个情况呢?如果我这个object中有一些关键的资源没有初始化,比如说Database co ...

  2. mybatis、ibatis 和spring集成

    mybatis是ibatis的升级版,spring也有自带mybatis的orm.所以,搭建ibatis的框架也会有多种方式(我这里mybatis是3.0的,ibatis是2.3的,spring是3. ...

  3. per-cpu

    What is percpu data? percpu data 是内核为smp系统中不同CPU之间的数据保护方式,系统为每个CPU维护一段私有的空间,在这段空间中的数据只有这个CPU能访问.但是这种 ...

  4. 示例 - 如何在Console应用程序中应用SpiderStudio生成的DLL?

    以前面生成的XML/JSON互转DLL为例, 我们写一个Console Appliction来做这件事情, 步骤如下: 1. 创建Console Project 2. 引入www.utilities_ ...

  5. php接入域账号登陆代码

    php接入域账号登陆代码       //替换本地登录为AD域用户认证//edit by ZhangJin on 2015-05-23 -START-$dn = $user_account.'@fun ...

  6. 关于Unity的C#基础学习(一)

    一.程序包含 1.数据:运行过程中产生的 2.代码:代码指令 数据和代码都是存放到内存中的,代码指令在程序加载的时候放到内存,数据是在程序运行的时候在内存中动态地生成,随时会被回收,要定义变量来存放数 ...

  7. JAVA会将所有的错误封装成为一个对象,其根本父类为Throwable

    JAVA会将所有的错误封装成为一个对象,其根本父类为Throwable. Throwable有两个子类:Error和Exception. 一个Error对象表示一个程序错误,指的是底层的.低级的.不可 ...

  8. ERROR: openstack Error finding address for http://10.16.37.215:9292/v1/images: [Errno 32] Broken pipe

    Try to set: no_proxy=10.16.37.215 this should help 转自: http://askubuntu.com/questions/575938/error-i ...

  9. java.lang.ClassNotFoundException: org.codehaus.jackson.JsonProcessingException 异常解决方案

    在SpringMVC中使用Jackson实现json输出时配置如下: <!-- 输出对象转JSON支持 --> <bean id="stringConverter" ...

  10. 安装wampserver时提示丢失MSVCR110.dll

    安装Wampserver 2后启动的时候提示系统错误:MSVCR110.dll丢失. 在wampserver官网上有例如以下提示: 于是卸载原来的WAMPSERVER 2 ,在http://www.m ...