概要
基于git仓库分支版本实现持续集成,只为持续集成,去除臃肿部署。
整体流程
1、打开工程目录,git fetch刷星更改记录。
2、获取当前分支提交的hash值,获取远程分支hash值。
3、比较哈希值,哈希值不同则执行pull、工程打包和发布命令,哈希值相同则退出。
4、将监本添加至crontab 。
5、提交代码实现持续集成。
技术名词解释
- crontab:linux定时任务
- git哈希值:Git 中用来唯一标识各种对象的哈希值
实现细节和代码
- 脚本实现:
*注意需要记住git密码`。
#vi deployTask.sh
cd <你的工程目录>
git fetch
newVer=`git rev-parse --short origin/master` #分支可以自定义
curVer=`git rev-parse --short HEAD`
if [ "$newVer" = "$curVer" ];then
echo ""
else
sh pull.sh && sh mvnPkg.sh && sh deploy.sh #执行pull/打包/发布(由于各个类型项目打包方式不一样,这里就不在详细说明)
fi
- 将脚本添加crontab定时执行:
#crontab -e
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin#注意设置自己的环境变量
*/5 * * * * /root/deployTask.sh #根据自己的目录设置 5分钟检测一次
小结
配置完后,在origin/master分支被更新时,定时任务就会执行发布命令实现持续集成。