使用shell脚本进行本地代码暂存,然后分支代码合并提交
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
一直都是使用的eclipse+git小乌龟进行代码管理,但最近接触的项目是多个git仓库分别管理不同的业务模块。用eclipse进行代码拉取和合并总是很麻烦,而且作为本地的一套打版分支,并不需要eclipse去打开它,而用小乌龟一个一个合并更新又特别慢。于是自己写了一个shell,用命令行去完成,简单有效
上代码
#!/bin/bash
echo "开始拉取XXX分支"
cd D:/WORK-SP/XXX
popflag=0
callcurl=`git stash save "123"`
if [[ $callcurl = "No local changes to save" ]]
then
popflag=0
else
popflag=1
fi
git pull
echo "拉取XXX完成"
echo "开始合并开发分支"
git fetch origin dev_XXX:dev_XXX
git merge dev_XXX
git commit -am 'merge dev_XXX'
git push origin sit_XXX
git branch -d dev_XXX
if [[ $popflag = 1 ]]
then
git stash pop stash@{0}
fi
echo "合并开发分支完成"
echo 按任意键继续
read -n 1
echo 继续运行
总结
1、判断是否本地有改动,如有改动先stash暂存起来;
2、拉取远程测试分支最新代码;
3、合并本地开发分支到测试分支;
4、添加提交到远程;
5、删除拉取下来的开发分支;
6、如有stash暂存,则弹出暂存。
7、保证窗口不关闭(read -n 1)