gitee+宝塔实现本地代码svn提交到仓库之后自动同步到web站点教程

简介: gitee又叫码云是和github类似的国内代码托管平台,之所有选择码云也是因为它在国内速度比较快,地址:https://gitee.com/

gitee又叫码云是和github类似的国内代码托管平台,之所有选择码云也是因为它在国内速度比较快,地址:https://gitee.com/


宝塔是一款用python编写的服务器面板说白了就是先在服务器安装宝塔,然后通过宝塔管理服务器,同时给宝塔做个广告,宝塔是目前服务器面板里面做的最好的一款,没有之一,注册地址:


宝塔服务器面板,一键全能部署及管理,送你3188元礼包,点我领取https://www.bt.cn/?invite_code=MV93dmxhb20=


宝塔有一个免费的webhook的插件,大概意思就是对外提供一个http的接口,供外部调用从而在服务器执行shell脚本,我们恰巧利用的是码云的webhook,也就是本地代码提交到码云后,触发码云的webhook,码云的webhook又去触发宝塔的webhook从而可以在服务器执行脚本,通过脚本我们就能拉取仓库代码到我们的web站点了。


1.首先在码云创建仓库,然后开启svn,我们就能找到svn的仓库地址了。 svn://gitee.com/zhensoft/zhensoft


5.jpg

5.jpg

6.png

2.在本地开发环境首次先checkout仓库到本地完成本地初始化。会提示输入仓库地址,账号和密码,账号和密码是码云的账号和密码 。(本地需要安装svn客户端)


3.在服务器web站点根目录执行svn  checkout   svn://gitee.com/zhensoft/zhensoft    ./   ,完成站点内容初始化,需要安装svn客户端。


4.在宝塔后台找到webhook插件,添加一个webhook,获取到一个http请求的地址,例如 http://123.56.147.134:9011/hook?access_key=5eIgW8ClChxrQ0oCvxbWou687A1HAXnoi9ryOUmCl0YMZHRq&param=aaa ,然后编辑脚本里面写如下shell代码,


#!/bin/sh

WEB=/www/wwwroot/huodong.quanmindian.com/  

cd $WEB && /usr/bin/svn update --username   613154514@qq.com   --password  123456  --no-auth-cache


7.jpg

WEB是web站点的根目录,username是码云账号,password是码云的密码,这段代码意思就是一旦触发宝塔的这个webhook就会执行这段shell脚本,这段shell脚本意思就是进入web站点根目录,然后执行svn的update命令,把仓库的代码更新过来


5.配置码云的webhook

8.jpg

6.测试提交

9.jpg10.jpg11.jpg

相关文章
|
17天前
|
安全 应用服务中间件 开发工具
Web安全-SVN信息泄露漏洞分析
Web安全-SVN信息泄露漏洞分析
60 2
|
1月前
|
XML JSON 安全
Web安全-代码注入
Web安全-代码注入
18 6
|
2月前
|
中间件 API 开发者
Bottle框架探秘:如何用几行代码搅动Web开发江湖?
【8月更文挑战第31天】Bottle是一个仅依赖Python标准库的轻量级Web开发微框架,无需额外依赖,简化部署与维护。它以简洁高效著称,适合快速构建Web应用。通过简单的示例即可上手,如用几行代码实现“Hello World”应用。除基础功能外,Bottle还支持模板渲染、会话管理和表单处理等,适用于学习及小型项目,也能在高性能要求的应用中展现价值。无论是新手还是有经验的开发者,Bottle都是高效Web开发的理想选择。
34 1
|
2月前
|
前端开发 JavaScript
Web 前端大揭秘!JS 数据类型检测竟如此震撼,一场惊心动魄的代码探秘之旅等你来!
【8月更文挑战第23天】在Web前端开发中,合理检测数据类型至关重要。JavaScript作为动态类型语言,变量类型可在运行时变化,因此掌握检测技巧十分必要。
28 1
|
2月前
|
监控 前端开发 Serverless
现代化 Web 应用构建问题之观测站点的PV、UV和API异常等指标如何解决
现代化 Web 应用构建问题之观测站点的PV、UV和API异常等指标如何解决
39 2
|
2月前
|
数据可视化 NoSQL Serverless
现代化 Web 应用构建问题之Serverless架构的Web站点费用计算如何解决
现代化 Web 应用构建问题之Serverless架构的Web站点费用计算如何解决
38 1
|
2月前
|
数据库 开发者 Java
数据战争:Hibernate的乐观与悲观锁之争,谁将主宰并发控制的王座?
【8月更文挑战第31天】在软件开发中,数据一致性至关重要,尤其是在多用户并发访问环境下。Hibernate 作为 Java 社区常用的 ORM 框架,提供了乐观锁和悲观锁机制来处理并发问题。乐观锁假设数据不易冲突,通过版本号字段 (`@Version`) 实现;悲观锁则假定数据易冲突,在读取时即加锁。选择哪种锁取决于具体场景:乐观锁适合读多写少的情况,减少锁开销;悲观锁适合写操作频繁的场景,避免数据冲突。正确应用这些机制可提升应用程序的健壮性和效率。
28 0
|
2月前
|
Java UED 自然语言处理
Struts 2 国际化竟有如此神奇魔力?快来揭开多语言支持的 Web 应用神秘面纱
【8月更文挑战第31天】在全球化背景下,Web应用需适应多种语言环境。Struts 2凭借其强大的国际化(i18n)支持,简化了多语言应用开发。通过不同语言的资源文件,它能自动匹配用户语言偏好,优化用户体验并扩展用户群。下面是一个示例:创建`messages.properties`(英语)与`messages_zh_CN.properties`(中文),并在Struts 2的Action类及JSP页面中调用`getText()`方法及Struts标签展示相应语言内容。此外,在struts.xml中指定资源文件,以确保框架正确加载对应语言包。通过这些步骤,开发者可以轻松实现应用的多语言支持。
55 0
|
2月前
|
Java 开发者 JavaScript
Struts 2 开发者的秘籍:隐藏的表单标签库功能,能否成为你下个项目的大杀器?
【8月更文挑战第31天】Struts 2表单标签库是提升Web页面交互体验的神器。它提供丰富的标签,如`<s:textfield>`和`<s:select>`,简化表单元素创建与管理,支持数据验证和动态选项展示。结合示例代码,如创建文本输入框并与Action类属性绑定,显著提升开发效率和用户体验。通过自定义按钮样式等功能,Struts 2表单标签库让开发者更专注于业务逻辑实现。
41 0
|
2月前
|
iOS开发 Android开发 MacOS
从零到全能开发者:解锁Uno Platform,一键跨越多平台应用开发的神奇之旅,让你的代码飞遍Windows、iOS、Android、macOS及Web,技术小白也能秒变跨平台大神!
【8月更文挑战第31天】从零开始,踏上使用Uno Platform开发跨平台应用的旅程。只需编写一次代码,即可轻松部署到Windows、iOS、macOS、Android及Web(通过WASM)等多个平台。Uno Platform为.NET生态带来前所未有的灵活性和效率,简化跨平台开发。首先确保安装了Visual Studio或VS Code及.NET SDK,然后选择合适的项目模板创建新项目。项目结构类似传统.NET MAUI或WPF项目,包含核心NuGet包。通过简单的按钮示例,你可以快速上手并构建应用。Uno Platform让你的技术探索之旅充满无限可能。
40 0