webhook的方式做一个监听,在git仓库管理平台添加webhook后可以实时同步代码到项目。
①在宝塔安装webhook插件

②添加脚本

我监听某个仓库提交并拉取dev分支示例:
#!/bin/bash
echo ""
# 输出当前时间
echo $(date --date='0 days ago' "+%Y-%m-%d %H:%M:%S")
echo "Start"
# git 项目路径
gitPath="/www/wwwroot/yourWebsite"
# git 网址
gitHttp="你的git ssh地址"
echo "Web 站点路径:$gitPath"
# 判断项目路径是否存在
if [ -d "$gitPath" ]; then
cd $gitPath
# 判断是否存在 git 目录
if [ ! -d ".git" ]; then
echo "在该目录下克隆 git"
git clone -b master $gitHttp . && echo "克隆成功" || { echo "克隆失败"; exit 1; }
else
echo "Git 目录已存在,开始更新"
fi
# 切换到 master 分支
# echo "切换到 dev 分支"
git checkout dev
echo "拉取最新的项目文件"
git pull
#git reset --hard origin/dev
# 拉取最新的项目文件,并输出结果
# 设置目录权限
echo "更新完成"
chown -R www:www $gitPath
echo "End"
exit 0
else
echo "该项目路径不存在"
echo "End"
exit 1
fi③测试结果
