加入收藏 | 设为首页 | 会员中心 | 我要投稿 汽车网 (https://www.0577qiche.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 系统 > 正文

服务器添加git钩子的流程

发布时间:2023-02-27 14:22:55 所属栏目:系统 来源:
导读:这篇文章主要介绍了服务器添加git钩子的步骤,配置码云和服务器ssh
-服务器要开放22端口,对服务器git钩子相关知识感兴趣的朋友一起看看吧

又名git 宝塔 码云 webhook钩子自动同步

第一步,在服务器下载,软件
这篇文章主要介绍了服务器添加git钩子的步骤,配置码云和服务器ssh
-服务器要开放22端口,对服务器git钩子相关知识感兴趣的朋友一起看看吧

又名git 宝塔 码云 webhook钩子自动同步

第一步,在服务器下载,软件,webhook。

第二步,查看git版本,不能太低。

yum remove git 删除git

yum install http://opensource.wandisco.com/centos/7/git/x86_64/wandisco-git-release-7-2.noarch.rpm git最高版本

yum install git重新下载git最高版本

git config --global user.name XXX 邮箱名称

git config --global user.email XX@XX.com 邮箱账号

第三步,

配置码云和服务器ssh

-服务器要开放22端口

暂时只支持一个码云账号同步生成公钥对

1
ssh-keygen -t ed25519 -C "xxxxx@xxxxx.com" 这个就是公钥对
cat /root/.ssh/id_ed25519.pub 这个是获取公钥对

第四步:git配置webhook。(WebHook)

git 宝塔 码云 webhook钩子自动同步
linux git 安装
centos8.0 以上 yum源自带版本比较新的git 版本。
如果是centos7 版本要下载git最新版本的话,要下载ius yum源。(或者编译安装)
安装完成后可配置用户名和邮箱
git --global config user.name  XXX
git --global config user.email  xxx
 
配置码云和服务器ssh
-服务器要开放22端口
 
暂时只支持一个码云账号同步
生成公钥对
ssh-keygen -t ed25519 -C "xxxxx@xxxxx.com" //后面是邮箱 
 
生成的公钥对在root/.ssh 里面
复制公钥到码云上面
git clone 到服务器
cd /www/wwwroot/
git clone git@gitee.com:fatcar/dmd_new.git 
 
配置宝塔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 网址两种方式都可以ssh 或者https
gitHttp="git@gitee.com:fatcar/$1.git"
#gitHttp="git@gitee.com:xxx/$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
        sudo git pull        
        echo "设置目录权限"
        sudo chown -R www:www $gitPath
        echo "End"
        exit
else
        echo "该项目路径不存在"
        echo "新建项目目录"
        mkdir $gitPath
        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
        sudo git pull
        echo "设置目录权限"
        sudo chown -R www:www $gitPath
        echo "End"
        exit
fi

(编辑:汽车网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章