首页 > 其他分享 >Gitee仓库+宝塔WebHook实现线上与仓库代码同步更新

Gitee仓库+宝塔WebHook实现线上与仓库代码同步更新

时间:2024-06-11 11:10:30浏览次数:9  
标签:git gittemp 仓库 sudo WebHook echo gitPath Gitee

本文由 ChatMoney团队出品

进行以下操作时,请确保已经在gitee添加了SSH公钥(Gitee个人设置->SSH公钥)

  1. 宝塔上安装WebHook​编辑​

  2. 找到WebHook,点击设置,点击添加,名称自行根据项目填写,脚本填写以下代码:

    #!/bin/bash
    echo ""
    # 输出当前时间
    date --date='0 days ago' "+%Y-%m-%d %H:%M:%S"
    echo "Start"
     
    # git项目路径(这里根据自己的项目路径进行修改)
    gitPath="/www/wwwroot/test"
    # git网址(这里根据自己的Git地址进行修改)(ssh的地址||http地址)
    gitHttp="https://gitee.com/out-of-town/test.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 "拉取最新的项目文件"javascript:;
            sudo git reset --hard origin/master
            sudo git pull       
            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
    

  3. 点击查看密钥,获取密钥:

  1. 来到Gitee仓库,添加WebHooks,把密钥和url填进去,点击添加:

请注意,为了保证安全性,你可能需要在服务器上设置防火墙规则,允许Gitee的IP地址访问你的宝塔面板端口。同时,确保你的WebHook密钥是安全的,不要泄露给其他人。

关于我们

本文由ChatMoney团队出品,ChatMoney专注于AI应用落地与变现,我们提供全套、持续更新的AI源码系统与可执行的变现方案,致力于帮助更多人利用AI来变现,欢迎进入ChatMoney获取更多AI变现方案!

标签:git,gittemp,仓库,sudo,WebHook,echo,gitPath,Gitee
From: https://www.cnblogs.com/ChatMoney/p/18241726

相关文章

  • 数据仓库之维度建模
    维度建模是数据仓库设计中的一种方法,旨在优化数据查询和分析过程。它通过将数据划分为事实表和维度表,使复杂的数据查询变得更加高效和直观。以下是关于数据仓库维度建模的详细介绍:1.维度建模的概念维度建模(DimensionalModeling)是一种数据建模方法,用于设计数据仓库中的数据......
  • 14、Harbor镜像仓库的介绍和安装
    1、之前架构流程的问题(若是我们后续有多台的服务器,需要多台部署,那么多台服务器都自定义镜像的构建复杂)我们之前的流程是jenkins将tar包推送至我们的服务器,然后我们的服务器再通过项目中的dockerfile、docker-compose等文件来自己制作进行镜像然后运行2、优化流程方案:(har......
  • 数据仓库核心:事实表深度解析与设计指南
    文章目录1.引言1.1基本概念1.2事实表定义2.设计原则2.1原则一:全面覆盖业务相关事实2.2原则二:精选与业务过程紧密相关的事实2.3原则三:拆分不可加事实为可加度量2.4原则四:明确声明事实表的粒度2.5原则五:避免同一事实表中存在不同粒度的事实2.6原则六:统一事实的......
  • 【Gitlab】私有Gitlab仓库部署
    背景在做个人项目开发的时候,经常会遇到多地编写互相同步版本的情况,时间久了版本会出现混乱情况。gitlab是一个基于git的代码仓库管理的开源项目,个人也能够非常简便地搭建自己的私有代码管理仓库,用于个人项目的版本管理。在国内可以使用的版本的gitlab有社区版gitlab-ce、g......
  • 在本地的maven仓库中有所需要的依赖包,为何还会远程下载依赖
    在平时开发中我们经常会遇见这样的问题:明明本地有需要的依赖包,但是maven还是会从远程仓库拉取,如果远程仓库有需要的包还好,如果没有,或者无网络环境下没法访问远程仓库,那就直接报错,走不下去了。其实这很好处理的:原因:在本地仓库的每个依赖包都存在这样的文件:_remote.repositories......
  • Docker配置 之 本地仓库web访问
    介绍Docker是一种开源的应用容器引擎。Docker可以让开发者打包应用以及依赖包到一个可移植的容器中,然后发布到任何安装了Docker引擎的服务器上(包括Linux机器、Windows机器),也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似iPhone的app)。几乎没有性能开销,......
  • 数据仓库中的7种建模方法及示例
    数据仓库中的7种建模方法及示例原创(https://mp.weixin.qq.com/s/4Nnhih4ccLxs5hguQMZRHA)晓晓数据驱动智能2024-06-0907:19陕西图片试象一下,你是一家繁忙餐厅的分析工程师。每天,顾客都会预订、下订单并完成付款。所有这些数据都会流入餐厅的交易数据库,记录每次互动的详细信......
  • Linux搭建和共享第三方软件仓库
    实际案例下载linuxqq并建立和共享第三方软件仓库 1.实验主机配置主机1:IP:172.25.254.250主机名:server.tab.org[root@server250~]#hostnamectlhostnameserver.tab.org[root@server250~]#hostnameserver.tab.org[root@server250~]#ifconfigeth0:flags=4163<UP......
  • 新仓库怎么传git
    1.生成SSH密钥: 在本地安装的git目录下,启动git-bash.exe启动的git的命令中输入ssh-keygen -trsa 并一直回车到最后在路径中找到 .ssh/id_rsa.pub文件里面的密钥既为SSH密钥最后再在Github仓库里SSHKeys中写入即可2.创建仓库在目标位置上打开cmd然后输入gitinit......
  • idea,webstorm切换远程仓库
    当有一个老的项目需要从新上传到一个新的git地址,或者上传到云效上面,可以参考1:首先把setting->VersionControl->directoryMappings下面的仓库删除2,如果发现菜单栏的vcs不显示,双击shift,输入Mainmenu   3:选择 CreateGitRepository,创建git本地仓库   选择......