宝塔添加webhook脚本拉取程序代码


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


①在宝塔安装webhook插件

image.png

②添加脚本

image.png

我监听某个仓库提交并拉取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="your git url"

echo "Web 站点路径:$gitPath"

# 判断项目路径是否存在
if [ -d "$gitPath" ]; then
    cd $gitPath
    # 判断是否存在 git 目录
    if [ ! -d ".git" ]; then
        echo "在该目录下克隆 git"
        git clone -b dev $gitHttp gittemp
        mv gittemp/.git .
        rm -rf gittemp
    fi
    # 切换到 dev 分支
    git checkout dev
    # 拉取最新的项目文件
    #git reset --hard origin/dev
    git pull origin dev
    # 设置目录权限
    echo "拉取完成"
    chown -R www:www $gitPath
    echo "End"
    exit
else
    echo "该项目路径不存在"
    echo "End"
    exit
fi

③测试结果

image.png

评论/留言