美文网首页
合并 master 分支代码的快捷脚本

合并 master 分支代码的快捷脚本

作者: __Simon__ | 来源:发表于2021-12-27 11:03 被阅读0次

    此脚本适合在 MacOS 下工作

    # 获取当前分支的名称,在控制台输出,方便知道当前是为哪个分支合并代码
    current_branch=`git rev-parse --abbrev-ref HEAD`
    echo "当前分支为:$current_branch"
    # 将当前工作区的内容暂存起来
    stash_result=`git stash save "tempstash$$"`
    # 拉取 master 分支的代码
    git pull origin master 
    #获取上一步操作的返回状态码
    RET_CODE=$?
    # 如果状态码不为 0 说明拉取 master 分支失败,放弃合并 master 分支,并退出。
    if [ $RET_CODE -ne 0 ]; then 
    echo " 拉取 master 分支失败  $RET_CODE"
    exit $RET_CODE
    fi
    # 合并 master 分支代码到当前分支
    git merge --no-edit master
    # 将本地代码推送到远程分支
    git push
    # 判断是否有暂存的代码
    if [ "$stash_result" != "No local changes to save" ]; then
    # 恢复暂存的代码
    git stash pop stash@{0}
    fi
    # 正常退出
    exit 0
    

    配置

    1. 将上面的 shell 脚本保存到 merge_master.sh 文件中
    2. 在用户根目录的 .zshrc 文件中配置此脚本的使用别名。
    # Automatic merging master branch to current branch
    alias amm='zsh ~/xxx/xxx/merge_master.sh'
    
    1. 在终端执行 source ~/.zshrcamm 命令生效

    使用

    1. 在终端中 cd 到 git 项目的根目录
    2. 在终端中输入命令 amm。就会自动合并 master 分支的代码到当前的分支

    可以在脚本的顶部添加「切换到项目路径」的指令。而省略在终端中 cd 到项目根目录的步骤

    cd /xxx/xxx/xxx/project/root/dir/

    但是这样操作之后,amm 命令只针对这一个 git 仓库生效了。

    相关文章

      网友评论

          本文标题:合并 master 分支代码的快捷脚本

          本文链接:https://www.haomeiwen.com/subject/mcqyqrtx.html