• svn 版本管理与自动部分发布(转)


    作为团队开发项目时,会遇到项目的版本管理,测试部署与发布部署,下面是摘至他人的关于版本管理和自动部署的方案。

    svn自动部署的实现:

    使用svn的hook功能

    1、在版本库的hooks目录下面,有一些基于事件触发的执行脚本,比如post-commit, 去掉后缀.tmpl 
    2、编辑svn代码库服务器上文件: svn/test/hooks/post-commit 

    复制代码
    #!/bin/sh 
    REPOS="$1"
    REV="$2"
    export PATH="/usr/local/svn/bin:$PATH"  #由于代码是apache的进程用户www运行,所以需要设置环境变量 
    export LC_CTYPE=en_US.UTF-8             #防止提交的文件名存在非字母字符。   
    if (svnlook log -r $REV /home/http/repository/svn/test | grep "auto_deploy" )  #当用户提交时注释中写上"auto_deploy"的时候,就自动部署到apache目录,否则不部署。 
    then 
      echo "`date` 'auto depoly command received" >> /tmp/test_svnautocommit.txt   #这一行仅作调试使用 
      svn export "http://192.168.16.48/repo/svn/test/trunk/test_website"  /home/http/html/test_website  --force 
    fi
    复制代码

    3、 在客户端测试,并且要在comment中加入 auto_deploy,否则不会触发自动部署的操作

    参考:

    [1] SVN本地开发、测试环境版本控制-自动发布生产环境[2014-10-08].http://www.open-open.com/lib/view/open1376871583553.html

  • 相关阅读:
    C# 泛型
    EventHandler<TEventArgs>委托
    只能输入数字 ,只能有一位小数点。
    MVC过滤器 AuthorizeAttribute使用
    NuGet EntityFramework 常用命令
    Stride游戏引擎试毒
    Unity EditorWindow GUI裁剪
    unity2017自定义编译dll
    Unity
    WPF
  • 原文地址:https://www.cnblogs.com/sandea/p/4546189.html
Copyright © 2020-2023  润新知