git push脚本

 此脚本用来实现一键自动将本地的开发分支代码提交到远程分支

1, 在本地开发分支中新建gitpush.sh文件

vim gitpush.sh

2, 将以下代码复制进shell文件中

#!/bin/bash

echo -e "git push start\n "

recent_file_folder=$(cd $(dirname ${BASH_SOURCE[0]}); pwd ) #/opt/wwwroot/tob/web/be
section=${recent_file_folder##*/} #be

git_branch=`git symbolic-ref --short -q HEAD | grep '**'` #具体的开发分支,如requirment170914
echo -e "开始推送$section的$git_branch分支\n"

gitpull_results=`git pull | grep '**'`

if [[ $gitpull_results =~ 'remote: Compressing objects: 100%' ]];then
	echo -e "已经拉取$git_branch分支远程代码到本地\n"
elif [[ $gitpull_results =~ 'Already up-to-date.' ]];then
	echo -e "当前$git_branch分支代码已是最新代码\n"
else
	echo -e "拉取$git_branch分支代码失败,退出脚本\n"
	# exit
fi

gitstatus_results=`git status | grep '**'`
if [[ $gitstatus_results =~ '尚未暂存以备提交的变更:' ]];then
	git add .
	git commit -m "$1"
	echo -e "正在提交$git_branch 备注 $1\n"

	gitpush_results=`git push | grep '**'`
	if [[ $gitpush_results =~ '写入对象中: 100%' ]];then
		echo -e "完成推送$section的$git_branch分支\n"
	fi
fi

echo "git push finish"

​

3, 给此文件添加执行权限

chmod +x gitpush.sh

4, 为防止将此文件随着代码一起提交到远程代码库,在.gitignore文件中添加入此文件,并:wq保存退出

vim .gitignore
gitpush.sh
~                                                                                                                                                                                                           
~  

5, 在需要提交代码时,在分支目录中直接执行命令即可,注意加上此次提交的备注

c80k2@c80k2-Vostro-3667❯/opt/wwwroot/tob/web/be(archives171013)$ ./gitpush.sh 备注部分

6, 结果如下

转载于:https://my.oschina.net/u/3412738/blog/1540772

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值