码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • SVN自动更新


    前言 

    svn服务端与web服务必需在同一台服务器上;

    自动更新的大概原理:svn服务端监测到客户端提交操作后触发一个脚本,此脚本会把最新提交的内容更新到指定的目录(此目录必需关联同一仓库) ;

    svn服务端项目仓库下有个 hooks 目录,里面存放的是全部的钩子脚本的模板;

    post-commit.tmpl 为客户端 commit 提交后触发的模板;

     

    windows

    复制 hooks 目录下的 post-commit.tmpl 文件,修改文件名为 post-commit.bat 清除里面内容改为以下内容

    1. @echo off
    2. SET REPOS=%1
    3. SET REV=%2
    4. SET DIR=%REPOS%/hooks
    5. SET PATH=%PATH%;
    6. SET WORKING=F:/MuSiMp55
    7. svn update %WORKING% --username testuser --password 123456

    修改内容:

    WORKING  = web项目所在目录

    username = 用户

    password = 密码

     

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

    测试上面的 post-commit.bat 脚本,在cmd命令行里输入脚本所在路径回车

    C:\Users\admin>D:/SVN/Repositories/MuSiMp55/hooks/post-commit.bat

    出现以下信息则表明脚本成功执行

    1. C:\Users\admin>D:/SVN/Repositories/MuSiMp55/hooks/post-commit.bat
    2. 正在升级 ‘F:\test2′:
    3. 版本 15.

    项目关联 

    复制仓库地址,去存放web服务的目录打开 cmd 命令窗口 执行一次拉取操作

    svn co https://DESKTOP-0MD8889/svn/MuSiMp55/

    到此以后只要客户端通过 svn 提交操作,就会触发此脚本,自动同步web目录

    linux

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

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

    vi post-commit

    增加以下代码:

    1. #!/bin/sh
    2. WEB=/www/wwwroot/test
    3. export LANG=en_US.UTF-8
    4. svn update $WEB --username testuser --password '123456'

    保存,退出。。

    给予此脚本的权限:

    chmod 777 post-commit

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

    ./post-commit

    项目关联 

    复制仓库地址,去web服务目录执行一次拉取操作

    svn checkout svn://localhost/test--username testuser --password 123456

    以后只要客户端通过 svn 提交操作,就会触发此脚本,自动同步web目录

    注:服务端web目录必须是同一仓库拉取下拉的项目

    详细参考:SVN 安装与使用_安装svn_木心操作的博客-CSDN博客

  • 相关阅读:
    编程大师-Netty
    读书笔记:《BackTrader 量化交易案例图解》
    UE5学习笔记 判断物体是否在相机视野内
    java基于微信小程序的社区疫情防控系统 uniapp 小程序
    MySQL 存储引擎
    Docker容器-------数据卷和数据卷容器及cgroups资源限制
    (附源码)springboot西安酷跑健身房管理系统 毕业设计 345421
    HTML期末学生大作业——基于html+css+javascript+jquery+bootstrap响应式音乐酒吧网站
    【Mysql】Lock wait timeout exceeded; try restarting transaction
    springboot项目的可执行jar以后台本地服务的方式运行在Windows机器上
  • 原文地址:https://blog.csdn.net/qq_41579327/article/details/127910112
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号