• svn搭建(linux下)


    安装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.svnbin目录加到环境变量中去:

      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(zgwsvn账户)

    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为进程号

  • 相关阅读:
    Python 集合
    Python sorted()
    CodeForces 508C Anya and Ghosts
    CodeForces 496B Secret Combination
    CodeForces 483B Friends and Presents
    CodeForces 490C Hacking Cypher
    CodeForces 483C Diverse Permutation
    CodeForces 478C Table Decorations
    CodeForces 454C Little Pony and Expected Maximum
    CodeForces 313C Ilya and Matrix
  • 原文地址:https://www.cnblogs.com/zengguowang/p/6763194.html
Copyright © 2020-2023  润新知