zoukankan      html  css  js  c++  java
  • linux svn hooks代码自动更新至项目

    由于开发移动端web,ui需要及时看到样式变化,所以通过svn hooks(钩子)来提交文件,然后再把文件同步到测试服务器项目目录,步骤如下:

    1、进入 /home/svn/cmall/hooks (svn的安装目录,根据操作系统,路径各有不同)

      cp post-commit.tmpl post-commit

    2、修改post-commit权限(必须可写,本人比较懒,直接777)

      sudo chmod +x post-commit

    3、编辑post-commit

      vim post-commit

    把以下内容“粘贴”进去

    export LANG=en_US.UTF-8
    STATIC_DIR=/var/www/html/mall_test
    svn update $STATIC_DIR --username evan --password 123465 --no-auth-cache

    #
    # The post-commit hook is invoked after a commit.  Subversion runs
    # this hook by invoking a program (script, executable, binary, etc.)
    # named 'post-commit' (for which this file is a template) with the 
    # following ordered arguments:
    #
    #   [1] REPOS-PATH   (the path to this repository)
    #   [2] REV          (the number of the revision just committed)
    #
    # The default working directory for the invocation is undefined, so
    # the program should set one explicitly if it cares.
    #
    # Because the commit has already completed and cannot be undone,
    # the exit code of the hook program is ignored.  The hook program
    # can use the 'svnlook' utility to help it examine the
    # newly-committed tree.
    #
    # On a Unix system, the normal procedure is to have 'post-commit'
    # invoke other programs to do the real work, though it may do the
    # work itself too.
    #
    # Note that 'post-commit' must be executable by the user(s) who will
    # invoke it (typically the user httpd runs as), and that user must
    # have filesystem-level permission to access the repository.
    #
    # On a Windows system, you should name the hook program
    # 'post-commit.bat' or 'post-commit.exe',
    # but the basic idea is the same.
    # 
    # The hook program typically does not inherit the environment of
    # its parent process.  For example, a common problem is for the
    # PATH environment variable to not be set to its usual value, so
    # that subprograms fail to launch unless invoked via absolute path.
    # If you're having unexpected problems with a hook program, the
    # culprit may be unusual (or missing) environment variables.
    # 
    # Here is an example hook script, for a Unix /bin/sh interpreter.
    # For more examples and pre-written hooks, see those in
    # the Subversion repository at
    # http://svn.apache.org/repos/asf/subversion/trunk/tools/hook-scripts/ and
    # http://svn.apache.org/repos/asf/subversion/trunk/contrib/hook-scripts/
    
    #REPOS="$1"
    #REV="$2"
    #mailer.py commit "$REPOS" "$REV" /path/to/mailer.conf
    
    export LANG=en_US.UTF-8
    STATIC_DIR=/var/www/html/mall_test
    svn update  $STATIC_DIR --username evan --password 123456 --no-auth-cache
    

      

    4、完成

  • 相关阅读:
    【Django】django 处理request流程细节(转)
    【Django】request 处理流程(转)
    【Django】中间件
    【HTML】DocType
    【CSS】伪类与伪元素
    【nodejs】nodejs 的linux安装(转)
    【chrome】 chrome 开发者工具
    【samba】samba 用户权限配置(转)
    form表单组件
    自定义分页器
  • 原文地址:https://www.cnblogs.com/EvanHe/p/6221862.html
Copyright © 2011-2022 走看看