我司一个客户项目对应代码仓库的一个分支,每次新项目上线总是要从master复制一个分支,接着git clone到本地,在IDEA里面替换配置文件内容,上传到代码仓库,启动项目,配置nginx.conf,每次新项目上线耗时约30-60min。鉴于本人超级懒,不喜欢重复动作,只喜欢摸鱼,于是琢磨出了一套新项目上线脚本,每次脚本执行耗时约5-10min。
new_project_install.sh
echo "新建文件夹/opt/app/code"
mkdir -p /opt/app/code
echo "进入/opt/app/code"
cd /opt/app/code
#将git用户名、密码、仓库地址替换成自己的
echo "git拉取代码"
git clone https://username:password@gitee.com/xxx/xxx.git
echo "进入项目文件夹"
cd xxx
#必须是不存在的分支
echo "切换到新的分支"
git checkout -b $1
echo "推送新的分支代码到远端仓库"
git push origin $1
echo "拉取远端仓库新的分支代码"
git pull origin $1
echo "将远端仓库分支与本地仓库分支关联"
git branch --set-upstream-to=origin/$1
echo "再次拉取远端仓库新的分支代码,验证分支是否关联上"
git pull origin $1
echo "pom.xml 替换"
find -name "pom.xml" | xargs perl -pi -e "s|demo|$1|g"
echo "application.yml 替换"
find /opt/app/code/xxx/s