zoukankan      html  css  js  c++  java
  • svn部署web项目

    1.检查系统有没有安装svn

    svn --version

    2.如果没有安装采取安装svn

    yum install subversion

    3.创建版本库

    mkdir /var/www/svn

    svnadmin create /var/www/svn/demo

    4.配置版本库(conf文件夹)

    1)svnserve.conf配置

    [general]
    #匿名访问的权限 可以是read write none 默认为read
    anon-access = read
    #使授权用户有写入权限
    auth-access = write
    #用户密码数据库路径
    password-db = passwd
    #访问控制权限
    authz-db = authz
    #认证命名空间 subversion会在认证提示里显示 并且作为凭证缓存关键字
    realm=/opt/svn/repositories
    

    2)配置passwd文件(主要内容是用户+用户密码)

    [users]
    admin=123456
    

    3)权限控制authz配置

    [groups]
    #指定用户组内用户名
    #harry_and_sally = harry,sally
    #harry_sally_and_joe = harry,sally,&joe
    admin=admin
    
    #设置权限
    [demo:/]
    # harry = rw
    # &joe = r
    # * =
    #指定用户
    admin=rw
    #指定组
    @admin=rw
    
    #指向根目录
    # [/]
    
    #指向文件夹
    # [repository:/baz/fuz]
    # @harry_and_sally = rw
    # * = r
    

    5.开启版本库
    注意我们在authz配置项中指向的是[demo:/] 所以开启服务要指向它上一层

    svnserve -d -r /var/www/svn

    如果authz配置项中指向的是[/]

    svnserve -d -r /var/www/svn/demo

    6.查看进程

    netstat -aptn

    默认端口是:3690

    7.shell脚本方式设置开机启动svn服务

    1)修改 /etc/rc.d/rc.local 确认文件的执行权限

    chmod +x /etc/rc.d/rc.local
    

    2)创建shell脚本 设置svn开机启动

    vim /var/www/auto_run.sh
    

    3)内容如下

    #!/bin/bash
    /usr/bin/svnserve -d -r /var/www/svn
    

    4)保存退出后,再给它赋予可执行权限:

    chmod +x auto_run.sh
    

    5)将脚本添加到 /etc/rc.d/rc.local 文件最后一行

    /var/www/auto_run.sh
    

    6)重启系统就可以看到开机启动svn了

    reboot
    

    8.windows本地检出

    svn checkout svn://192.168.56.101/demo
    

    输入用户名密码即可

    9.windows图形软件

    TortoiseSVN

    10.在hooks文件夹下复制post-commit文件 复制内容如下(相当于执行shell脚本)

    #!/bin/sh 
    export LANG=zh_CN.utf-8
    #REPOS="$1"
    #REV="$2"
    SVN=/usr/bin/svn           #你svn脚本所在的目录
    WEB=/var/www/html     #你更新到web项目的位置
    $SVN update $WEB --username admin --password 123456
    

    11.给post-commit脚本赋予权限

    chmod 777 post-commit
    chmod +x  post-commit
    

    12.在你的服务器web项目下面checkout一次(重要)

    svn checkout svn://192.168.56.101/demo /var/www/html
    

    13.在本地上传一个文件会发现web项目已经更新了这个文件

    14.清除账号密码

      linux下 清除svn保存的账号密码信息
      删除~/.subversion/auth即可
      rm -rf ~/.subversion/auth
    
  • 相关阅读:
    024 其它 关联映射
    023 复合主键 关联映射
    022 component(组件)关联映射
    020 <one-to-one>、<many-to-one>单端关联上的lazy(懒加载)属性
    019 关联映射文件中集合标签中的lazy(懒加载)属性
    018 关联映射文件中<class>标签中的lazy(懒加载)属性
    017 多对多关联映射 双向(many-to-many)
    016 多对多关联映射 单向(many-to-many)
    015 一对多关联映射 双向(one-to-many)
    014 一对多关联映射 单向(one-to-many)
  • 原文地址:https://www.cnblogs.com/heanwanfeng/p/14585088.html
Copyright © 2011-2022 走看看