宝塔webhook对接gitee实现网站代码自动git pull更新,解决每次输入用户名密码问题

作者 : admin 本文共1143个字,预计阅读时间需要3分钟 发布时间: 2022-02-18 共596人阅读

此方法为热心网友整理,但是其并不完善,缺少重要一步,本人继续完善后发布。

步骤:

1.安装git

yum install git

2.安装webhook插件


添加脚本

#!/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
#git项目路径
gitPath="/www/wwwroot/$1"
#git网址
gitHttp="https://gitee.com/yourname/$1.git"
echo "Web站点路径:$gitPath"
#判断项目路径是否存在
if [ -d "$gitPath" ]; then
        cd $gitPath
        #判断是否存在git目录
        if [ ! -d ".git" ]; then
                echo "在该目录下克隆 git"
                sudo git clone $gitHttp gittemp
                sudo mv gittemp/.git .
                sudo rm -rf gittemp
        fi
        echo "拉取最新的项目文件"
        #sudo git reset --hard origin/master
        git reset --hard origin/master
        sudo git pull        
        echo "设置目录权限"
        sudo chown -R www:www $gitPath
        echo "End"
        exit
else
        echo "该项目路径不存在"
        echo "End"
        exit
fi


以上脚本中的yourname需要更改成你自己的,如果用的不是gitee,那就修改整个git网址,其中$1不用改,执行的时候会自动替换的。

然后查看密钥并复制

3.进入gitee

创建仓库webhook-test
管理-WebHooks
然后参考下图填写

4.返回宝塔,打开终端

进入wwwroot目录 cd /www/wwwroot
克隆仓库 git clone https://gitee.com/yourname/webhook-test.git


会提示输入账户密码,直接输入即可

5.配置存储用户名密码

鉴于本文所述方法为https方式拉取,此方式默认不保存用户密码,若不进行此步骤,则脚本虽可执行不报错,但是无法自动拉取代码。

git config  user.name “你的用户名”

git config  user.email “你的邮箱”

git config  user.password “你的密码”

配置完成后还需要在系统存储,执行如下命令:

git config  credential.helper store

可带–global参数配置全局,不带则配置当前仓库。

6.新建个文件测试下


查看宝塔网站目录,出现index.html,成功!

嘟咪云,提供最优质的的资源集合
嘟咪云 » 宝塔webhook对接gitee实现网站代码自动git pull更新,解决每次输入用户名密码问题

常见问题FAQ