• linux下通过yum安装svn及配置


    1.环境
    centos6.4

    2.安装svn
    yum -y install subversion

    3.配置

    建立版本库目录
    mkdir /usr/svn

    svnserve -d -r /usr/svn  启动svn服务

    4.建立版本库

    创建一个新的Subversion项目
    svnadmin create /usr/svn/project

    配置允许用户user访问  将注释去掉
    cd /usr/svn/project/conf

    vi svnserve.conf
    anon-access=read
    auth-access=write
    password-db=passwd

    注:修改的文件前面不能有空格,否则启动svn server出错

    vi passwd
    [users]
    #<用户1> = <密码1>
    #<用户2> = <密码2>
    user=123456

    vi authz  添加用户组

    此时版本库已经建好了

    ######################################

    客户端使用svn

    svn co svn://ip/project

    6.实现SVN与WEB同步,可以CO一个出来,也可以直接配在仓库中

    1)设置WEB服务器根目录为/var/www/webroot

    2)checkout一份SVN

    svn co svn://localhost/njlrxx /var/www/webroot/njlrxx

    修改权限为WEB用户

    chown -R apache:apache /var/www/webroot/njlrxx

    3)建立同步脚本

    cd /var/www/svndata/njlrxx/hooks/

    cp post-commit.tmpl post-commit

    编辑post-commit,在文件最后添加以下内容

    复制代码
    复制代码
    REPOS="$1"
    REV="$2"
    
    BASEPATH=/var/www/webroot/njlrxx
    WEBPATH="$BASEPATH/"
    export LANG=zh_CN.UTF-8
    svn update $WEBPATH --username jiqing --password 123456 --no-auth-cache
    复制代码
    复制代码

    增加脚本执行权限

    chmod +x post-commit

    最后操作是关闭服务然再打开服务:

    svn服务的关闭:

    killall svnserve

    svn开启:

    svnserve -d -r /var/www/svndata

    ===============================================================

    SVN自动同步程序执行流程:
    1、用户提交文件到SVN服务器,提交操作成功后触发post-commit脚本
    2、在post-commit版本文件中使用php_script.php执行PHP脚本
    3、在PHP脚本中通过exec系统调用更新服务器上的版本库工作副本
    4、根据更新操作结果日志,对另一个SVN版本库进行对应的操作处理

    svn有两种存储方式:BDB和FSFS,目前用的最多的是FSFS方式,这种方式的话,一般是存储在db
    evs文件夹下,里面有一堆以版本号命名的文件,如:0、1、2、3、4......,那个就是了。

    svn先把0版本的状态压缩成1个文件,然后每次版本更新时就针对变动的部分做一个压缩文件,每次都是增加一个增量包,最后在服务器上能看到文件名为从0开始到最终版本的一系列文件
  • 相关阅读:
    DS博客作业05--查找
    DS博客作业04--图
    DS博客作业03--树
    DS博客作业02--栈和队列
    DS博客作业02--线性表
    c博客06-结构体&文件
    C博客作业05--2019-指针
    面向对象设计大作业——QQ联系人系统
    DS博客作业05--查找
    DS博客作业04--图
  • 原文地址:https://www.cnblogs.com/georgelu/p/6423002.html
Copyright © 2020-2023  润新知