zoukankan      html  css  js  c++  java
  • windows,linux下SVN实现自动更新WEB目录

    通过SVN进行版本库管理,每次提交后,都要在SVN服务器更新最新上传的版本到WEB目录进行同步。操作比较烦琐,而且效率也低。使用SVN钩子脚本进行WEB目录同步,可很好的解决这方面的问题。由于测试机器与SVN库都在同一台机器里,所以处理起来比较方便。

     

    svn项目下面有hooks目录,里面存放的是全部的钩子脚本的模板

    post-commit.tmpl 为客户端commit提交后触发

    以下是windows和linux下自动更新版本库的方法:

    在SVN 项目版本库的存储目录下的hooks 目录,新建立一个post-commit.bat 文件:

    windows:

    @echo off
    SET REPOS=%1
    SET REV=%2
    SET DIR=%REPOS%/hooks
    SET PATH=%PATH%;
    SET WORKING=E:/www/o135
    svn update %WORKING% --username o135 --password o135123

    注意:以上方法必须把SVN服务器安装目录下的bin加入到path路径(环境变量)中。SVN通过setup进行安装,默认会将bin目录增加到path路径中,如果通过压缩包进行安装,必须要手动增加。

    要想知道此脚本是否出错,可在cmd命令行里输入:C:Documents and SettingsAdministrator>e:/svn/hooks/post-commit.bat  进行测试。出现以下信息则表明脚本成功执行:

    C:Documents and SettingsAdministrator>e:/svn/hooks/post-commit.bat
    正在升级 ‘E:wwwo135′:
    版本 15。

    红色部分是版本库的位置,大家按实际位置进行修改。

    以后不管那台机器,只能通过svn commit命令,都会触发此脚本,自动同步web目录中。

     

    linux:

    linux下原理跟windows是一样的。只是新建的文件名不一样。

    在SVN 项目版本库的存储目录下的hooks 目录,新建立一个post-commit文件:

    vi post-commit

    增加以下代码:

    #!/bin/sh
    WEB=/home/data/o135
    export LANG=en_US.UTF-8
    svn update $WEB --username o135 --password 'o135123'

     

    保存,退出。。

    给予此脚本的权限:

    chmod 777 post-commit

    测试一下,看脚本是否有权限问题

    ./post-commit

    以后每次客户端提交操作,就会自动运行该脚本。

  • 相关阅读:
    Flink安装排坑指南
    Java对类进行XSS过滤
    java.sql.SQLException: 无法转换为内部表示
    Flutter环境搭建
    运行npm命令 TypeError: Cannot read property 'get' of undefined
    利用Xilinx的cordic ip做开方运算
    modelsim脚本化仿真出现的两个错误
    opencv中使用imread()读入的图像,始终为显示为8位深度
    PS端时钟供给PL使用的问题
    Xilinx 使用shift_RAM消耗分布式RAM(LUTRAM)还是BRAM (Block RAM)?
  • 原文地址:https://www.cnblogs.com/caicaizi/p/5022629.html
Copyright © 2011-2022 走看看