使用hooks自动监测git仓库更改并拉取
时间:2022-07-25
本文章向大家介绍使用hooks自动监测git仓库更改并拉取,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
我们在务器上使用宝塔进行操作,使用宝塔比较直接,可视化,各种操作和安装东西很方便(如果只是想安装一些东西,快速搭建),后面也会继续使用宝塔为网站安装https
证书,使用Let's Encrypt
申请免费的证书并配置
首先在软件商店搜索webhookl
安装,添加,名称自定以,执行脚本根据下面的自己更改(如果执行没有效果可以自行根据自己的环境及情况更改,每次回调日志可以在宝塔中看到)
#!/bin/bash
echo ""
#输出当前时间
date --date='0 days ago' "+%Y-%m-%d %H:%M:%S"
echo "Start"
#判断宝塔WebHook参数是否存在
if [ ! -n "$1" ];
then
echo "param参数错误"
echo "End"
exit
fi
gitPath="/www/wwwroot/项目目录"
#判断项目路径是否存在
if [ -d "$gitPath" ]; then
echo "目录存在并进入目录wwwroot"
cd $gitPath
git fetch --all
git reset --hard origin/master
git pull
echo "设置目录组合拥有者"
sudo chown -R www:www $gitPath
echo "设置目录权限"
sudo chmod -R 755 $gitPath
echo "End"
exit
else
echo "该项目路径不存在"
echo "新建项目目录"
cd /www/wwwroot/
echo "克隆最新的项目文件"
git clone 仓库地址 ./项目目录
echo "设置目录组合拥有者"
sudo chown -R www:www $gitPath
echo "设置目录权限"
sudo chmod -R 755 $gitPath
cd $gitPath
git checkout master
echo "End"
exit
fi
修改完成后到 github 的项目仓库里,setting
里的webhooks
将宝塔生成的密匙的url
添加进去
注意
这一步url
的param
不一定要跟宝塔一样,这个就是脚本里的$1
变量,这个脚本是把自己的仓库名设置为了param
,也就是把上面图最后的aaa
改为了resp_name
.
测试 注意 不要在宝塔里测试,去github
仓库里发请求(后面改为了coding
,改完bash
脚本后最好重启一下宝塔面板)
更改hexo
的一些内容,查看travisci
部署情况,部署完成查看服务器的仓库是否更新
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Array - 59. Spiral Matrix II
- Array - 54. Spiral Matrix
- String - 8. String to Integer (atoi)
- Array - 16. 3Sum Closest
- Array - 15. 3Sum
- Design - 146. LRU Cache
- LinkedList - 142. Linked List Cycle II
- LinkedList - 2. Add Two Numbers
- Array - 56. Merge Intervals
- golang 内存分析/内存泄漏
- golang gctrace分析gc过程
- golang 标准库 time/rate 介绍
- golang map的并发读写导致panic
- 正则表达式
- redis设计与实现系列1-SDS