一、服务器安装git

安装命令
yum install git

已安装的可以查看git版本
git --version

我一直安装失败,不知道什么原因,如果有大神知道,请指教一二。
于是我就用如下步骤安装git了

1. 进入git官网

image.png
https://mirrors.edge.kernel.o...

2. 找到你需要的版本

image.png

3. 右键gz或者xz,复制链接地址
4. wget+链接地址下载

wget https://www.kernel.org/pub/software/scm/git/git-2.35.1.tar.gz

5. 解压缩

tar -zxf git-2.35.1.tar.gz

6. 安装

进入文件夹:cd git-2.35.1
设置安装路径:./configure --prefix=/usr/local/
构建和安装:make && make install

7. 检查

git --version

git version 2.35.1

安装成功

二、 安装webhook

image.png

三、点击设置 - 添加 - 输入名称和执行脚本

image.png

执行脚本如下,有两处需要修改
gitPath="/www/wwwroot/$1"(注意你的阿里云文件路径,如果不一样需要修改)
gitHttp="https://gitee.com/yourname/$1.git"(注意你的远程仓库地址,一定要改)
#!/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"
                git clone $gitHttp gittemp
                mv gittemp/.git .
                rm -rf gittemp
        fi
        #拉取最新的项目文件
        git reset --hard origin/master
        git pull
        #设置目录权限
        chown -R www:www $gitPath
        echo "End"
        exit
else
        echo "该项目路径不存在"
        echo "End"
        exit
fi

四、 配置远程仓库

宝塔面板,打开webhook密钥
image.png
远程仓库,配置WebHook
image.png

五、为了避免git pull 输入用户名密码,先把用户名密码加上

cd /www/wwwroot/ 下   //cd到你自己的目录
git clone https://gitee.com/yourname/自己的项目名称.git  

git config --global user.name "用户名"
git config --global user.email "邮箱"
git config --global credential.helper store

//会生成.gitconfig 的文件,查看
cat ~/.gitconfig  //显示内容

[user]
        name = 输入的用户名
        email = 输入的邮箱
[credential]
        helper = store
//第一次pull会提示输入用户名密码
git pull
Username for 'https://gitee.com': xxxx@xxxx.com
Password for 'https://xxxx@xxxx.com@gitee.com':输入正确密码
//生成.git-credentials 隐藏文件
cat ~/.git-credentials
https://Username:Password@gitee.com
 
vi ~/.git-credentials
可加多个用户名密码

最后,把网站根目录换成dist文件夹。

注意:如果宝塔面板上的网站根目录是dist文件夹,记得修改本地的.gitignore文件

image.png
这样当你从本地仓库git push master到远程仓库之后,dist文件夹代码就自动发布到线上了

查看WebHook日志
image.png


一斤代码
33 声望1 粉丝

引用和评论

0 条评论