zoukankan      html  css  js  c++  java
  • svn上传文件钩子

    svn钩子

     钩子脚本就是shell的写法,钩子就是被某些版本库事件触发的程序。    

     常用钩子:

      post-commit:在提交完成成功创建之后执行该钩子。(提交已经完成,不可更改)

       更新之后,通过邮件、微信通知

       更新触发checkout程序、然后推送到服务器

      pre-commit:提交完成前触发执行该脚本。

       限制上传文件的大小和拓展名,控制提交要输入的信息

    下面写一个小例子:

     rsync与svn钩子结合实现数据实时同步到服务器

          1、建立同步web目录

        mkdir /data/www

      2、将svn中内容checkout到web目录中

        svn co svn://ip/sadoc /data/www --username=syk --password=syk123

      3、设置钩子

        cp post-commit.tmpl post-commit

      4、编写脚本

        1)、> post-commit

        2)、chmod 700 post-commit

        3)、vim post-commit添加:

          #!/bin/bash

          REPOS="$1"

          REV="$2"

          export LANG=en_US.UTF-8

          LOGPATH="/tmp/log"

          [ ! -d ${LOGPATH} ]  && mkdir ${LOGPATH} -P

           SVN=/usr/bin/svn

           $SVN update --username syk --password syk123 /data/www

          if [ $? -eq 0 ]

          then

          /usr/bin/rsync -az --delete /data/www /tmp/

          fi

       5、测试

        这时我们在svn上新建一个文件并提交,在tmp目录下就可以看到有这个新建的文件。

  • 相关阅读:
    Ubuntu 中软件的安装、卸载以及查看的方法总结
    无锁队列的环形数组实现
    Geodatabase模型
    地图投影与ArcGIS坐标系转换
    ARCGIS动态画点
    ArcEngine数据删除几种方法和性能比较
    AE开发技术文档--8种数据访问方法
    Hibernate 的HQL和sql有什么区别
    ActionContextCleanUp作用
    Hibernate延迟加载与opensessioninviewFilter
  • 原文地址:https://www.cnblogs.com/shuaihan/p/9434347.html
Copyright © 2011-2022 走看看