前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >教你写一个快速提交git代码的shell脚本

教你写一个快速提交git代码的shell脚本

原创
作者头像
前端老道
修改2020-05-18 10:59:43
4.4K0
修改2020-05-18 10:59:43
举报
文章被收录于专栏:Vue开发社区Vue开发社区

“ 关注 前端开发社区 ,回复 '领取资源',免费领取Vue,小程序,Node Js,前端开发用的插件以及面试视频等学习资料,让我们一起学习,一起进步

一、什么是shell脚本?

Shell脚本,就是利用Shell的命令解释的功能,对一个纯文本的文件进行解析,然后执行这些功能,也可以说Shell脚本就是一系列命令的集合。 Shell可以直接使用在win/Unix/Linux上面,并且可以调用大量系统内部的功能来解释执行程序,如果熟练掌握Shell脚本,可以让我们操作计算机变得更加轻松,也会节省很多时间。

二、shell脚本能做什么?

1、git提交命令可以用shell缩短成一句话

2、更新某个工程sdk库

3、打包,编译等命令

4、批量上传空文件夹

5、总之能想到的终端命令都可以尝试着写,总之就是一个操作执行多个命令,简单方便

三、工作原理

四、 废话不多说直接上代码

前提:需懂一些shell脚本语法,其实和PHP差不多。直接建一个.sh文件,比如我的就是:git-push.sh,直接在编辑器里面编写,执行命令就是 git-push.sh

我的项目都是在一个文件夹中,所以执行的时候会传递三个参数就是  git-push.sh  '项目带号'  '项目commit' '项目的分支'。

代码语言:javascript
复制
if [ ! $1 ]
then
  echo "####### 请输入自己的项目 #######"
  exit;
fi
 
if [ ! $2 ]
then
  echo "####### 请输入commit值 #######"
  exit;
fi
 
#给出一个默认的项目路径
path="/Users/duodian/Desktop/work/miniProgram"
 
case "$1" in
  "p")
  echo "PC项目"
  path="/Users/duodian/Desktop/work/web-pc"
  ;;
  "m")
  echo "小程序项目"
  path="/Users/duodian/Desktop/work/miniProgram"
  ;;
  "h")
  echo "H5项目"
  path="/Users/duodian/Desktop/work/web-h5"
  ;;
  "c")
  echo "后台项目"
  path="/Users/duodian/Desktop/work/circleManAdmin"
  ;;
esac
 
#先进入项目当中
 
cd $path
 
echo "####### 进入自己的项目 #######"
 
ls
 
echo "开始执行命令"
 
git add .
 
git status
 
#写个sleep 1s 是为了解决并发导致卡壳
 
sleep 1s
 
echo "####### 添加文件 #######"
 
git commit -m "$2"
 
echo "####### commit #######"
 
sleep 1s
 
echo "####### 开始推送 #######"
 
if [ ! $3 ]
then
  echo "####### 请输入自己提交代码的分支 #######"
  exit;
fi
 
git push origin "$3"
 
echo "####### 推送成功 #######"

五、alias 别名的使用

难道我们每次都得 敲 xxx/git-push.sh  '项目带号'  '项目commit' '项目的分支' 这么一大堆吗?每次都得先进到 .sh的文件夹中来执行这个命令吗?

我们可以命名一个别名,alias的作用就是将 为了让频繁使用的命令变的简单

语法:alias 【别名】=【命令】。如果alias后面没有值,则是现实所有的命令

步骤:

在根目录下 新建或者打开  ~/.bashrc

vim ./.bashrc

将自己想要执行的命令 用一个别名即可 

 使别名生效  终端里面执行

source ~/.bashrc

 执行效果:

可以的话,希望各位大佬给个小心心。还可以关注我的公众号,大家一起进步,一起学习! 

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档