返回上一级

GitLab与Git与Webhook与宝塔的结合

  1. 安装git

  2. 生成密钥SSH-key

    1git config --global user.name "mingzi"
    2git config --global user.email "mingzi@qq.com"
    3
    4#注意替换为自己注册的邮箱 
    5ssh-keygen -t rsa -C "你注册gitlab的邮箱"
    6#然后一路默认enter,即可生成密钥
    
  3. gitlab添加SSH密钥 复制id_rsa.pub的内容到gitlab的ssh密钥中

  4. 测试Git与GitLGab是否畅通

    1 ssh -T git@"你们公司或个人的gitLab域名" #如果出现Welcome说明成功,否则出错
    
  5. 宝塔安装webhook

  6. 填写Webhook执行脚本

     1#!/bin/bash
     2echo ""
     3#输出当前时间
     4date --date='0 days ago' "+%Y-%m-%d %H:%M:%S"
     5echo "Start"
     6#判断宝塔WebHook参数是否存在
     7if [ ! -n "$1" ];
     8then 
     9          echo "param参数错误"
    10          echo "End"
    11          exit
    12fi
    13#git项目路径
    14gitPath="/www/wwwroot/web/$1"
    15#git 网址
    16gitHttp="http://git.xxxxx.com/web/$1.git"
    17
    18echo "Web站点路径:$gitPath"
    19
    20#判断项目路径是否存在
    21if [ -d "$gitPath" ]; then
    22        cd $gitPath
    23        #判断是否存在git目录
    24        if [ ! -d ".git" ]; then
    25                echo "在该目录下克隆 git"
    26                git clone $gitHttp gittemp
    27                mv gittemp/.git .
    28                rm -rf gittemp
    29        fi
    30        #拉取最新的项目文件
    31        git reset --hard origin/master
    32        git pull
    33        #设置目录权限
    34        chown -R www:www $gitPath
    35        echo "End"
    36        exit
    37else
    38        echo "该项目路径不存在"
    39        echo "End"
    40        exit
    41fi
    

    编辑完成后 查看当前调用的网址:(希望 能直接生成调用网址 后面参数 param 为 shell 命令的变量 $1)

    001442n8n8bylike8pbbzb

  7. 进入gitee仓库选择管理的webhooks添加新的webhook (密码可以不填)

  8. 添加成功后点击测试查看请求结果