仅针对mac电脑用户,windows自行改脚本
一、背景
工作中常常面临一个问题,时常要切idea的分支,情景如下:
- 开发分支从
master
拉取最新分支:feature/function01
- 在分支
feature/function01
开发完功能准备合并到develop开发分支 - 此时我们通常的做法需要切换到
develop
分支,在找到feature/function01
分支,选择后合并到develop
分支,再push
- 这个过程中,如果我们电脑的性能差点,或者已经开启了n个idea项目,会发现切分支的速度慢的受不了,特别是当你发现改了一遍不行,又有点小改动,又要切回原来分支,改一点再切到
develop
合并,相当麻烦 - 为了解决快速提交到对应分支的问题,我晚上也找了下是否有这样的工具,很遗憾并没有找到,毕竟这是个很小很小的需求,但对深受困扰的部分人来讲,能解决也可以提升不少效率
二、方案
直接写sh脚本,通过脚本的方式在idea都没反应过来前,把分支切到develop
,完成checkout
,merge
,push
切回原来分支等操作
- #!/bin/bash
- # 功能:一键提交develop分支
-
- # 步骤0: 设置Git凭据助手(只需设置一次)
- # 这会告诉Git在需要时自动提供认证信息
- git config credential.helper store
-
- # 步骤1: 记录当前分支名称
- current_branch=$(git rev-parse --abbrev-ref HEAD)
-
- # 步骤2: 保存本地更改(如果有的话)
- git stash # 这将保存您的本地更改
-
- # 步骤3: 切换到第一个参数指定的分支
- target_branch="develop"
- git checkout "$target_branch"
-
- # 步骤4: 把步骤1指定的分支merge到当前分支
- git merge "$current_branch" -m "Merge branch '$current_branch' into '$target_branch'"
-
- # 步骤5: 推送更改到远程仓库
- git push
-
- # 步骤6: 返回到原来的分支
- git checkout "$current_branch"
-
- echo "操作完成!"
如果目标分支不叫develop
,可自行修改变量target_branch