码云(gitee)
博主本人搭建企业网站遇坑记录,挑重点讲哈!
前期准备:
代码托管平台:码云(gitee);
服务器:阿里云轻量应用服务器,1核2G、5M带宽(峰值)、1000G流量(只要96元[微笑],莫名其妙地就给阿里云打了一波广告),服务器安装git。
git安装并生成部署公钥
安装git:
yum install git
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
git config --list // 查看配置是否生效
生成公钥并查看:
ssh-keygen -t rsa
cd ~/.ssh
ls
cat id_rsa.pub
将生成的公钥添加到gitee部署公钥。
服务器运维面板:宝塔Linux面板(简单好用);
宝塔Linux面板
安装WebHook并添加Hook
宝塔面板软件商店搜索“宝塔WebHook”一键安装,Hook名称要求和gitee代码仓库名称保持一致,避免后续出现意料之外的错误。
代码仓库
执行脚本
#!/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/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
提交后即可查看密匙,然后将密匙填写到gitee的webhook配置中。
最后,在/www/wwwroot目录下新建文件夹,此处文件夹名称必须与gitee代码仓库名称保持一致。
查看结果
开发人员通过git提交代码,查看WebHook日志。