通常我们在用git做代码管理的时候,会在master/develope/release的基础上创建的自己的工作local branch,假设称之为“MyWorkBranch_local”。

然后我们在工作过程的中修改的代码会不断的提交到自己的local branch(MyWorkBranch_local),这样在这个branch上就会产生许多的commit。

当我们最终完成自己的代码,需要把自己branch(MyWorkBranch_local)的代码merge到master上,但是local branch上的commit的信息有时候太多,

没有必要保留过多的历史信息,只需要简洁明确的信息,这时候我们可以在master基础上再创建一个remote的branch,假设称之为"MyWorkBranch_remote",然后把local branch(MyWorkBranch_local)的代码先merge到remote的branch(MyWorkBranch_remote),并去掉历史信息,完整操作步骤如下:

1. git checkout master

2. git checkout -b MyWorkBranch_local

3. modify the codes and commit it to MyWorkBranch_local

4. git checkout master

5. git checkout -b MyWorkBranch_remote

6. git push origin MyWorkBranch_remote

7. git merge MyWorkBranch_local --squash

8. solve the confilicts

9. commit and push

10. create PR in github and merge to master/develope/release

还可以参考这篇文章,写的也很详细。

转载于:https://www.cnblogs.com/minstars/articles/5449422.html

为什么merge的时候要用squash相关推荐

  1. git merge --squash改写提交

    教程3 改写提交! 7. merge --squash 为了节省时间,这个教程使用现有的历史记录作为本地数据库. 从这里下载 我们移动到stepup-tutorial/tutorial7目录.本地端的 ...

  2. git hook分支_Git hook(钩子文件)机制

    githooks(5) NAME githooks - Hooks(钩子) used by git SYNOPSIS $GIT_DIR/hooks/* 简介 Hooks(钩子),是一些存放于$GIT_ ...

  3. 如何使用git merge --squash?

    我有一个远程Git服务器,这是我要执行的方案: 对于每个错误/功能,我创建一个不同的Git分支 我继续在Git分支中使用非官方的Git消息提交代码 在顶级存储库中,我们必须使用官方Git消息对一个错误 ...

  4. 聊下git merge --squash

    你经常会面临着将dev分支或者很多零散的分支merge到一个公共release分支里. 但是有一种情况是需要你处理的,就是在你的dev的分支里有很多commit记录.而这些commit是无需在rele ...

  5. Git合并操作之merge、rebase、squash详解

    文章目录 1 git merge和git rebase 1.1 git merge 1.2 git rebase 1.2.1 rebase交互模式 1.2.2 git pull --rebase 2 ...

  6. 使用git merge --squash,让commit变得优雅

    阅读本文需要3分钟 情景模拟 我们有三个分支,master,develop以及feature特性分支,假定我们开发时使用的是feature分支,我们来这里查看提交记录 当然,使用IDEA内置的 Ver ...

  7. git merge squash 和 rebase 区别

    在合并分支的时候,默认是有三种选项的,分别是 普通的 merge squash merge rebase merge 普通 Merge 说到合并分支,可能我们最熟悉的操作是这样的: 先切换到目标分支: ...

  8. git merge的三种操作merge, squash merge, 和rebase merge

    原链接:https://www.jianshu.com/p/ff1877c5864e git merge的三种操作merge, squash merge, 和rebase merge 举例来说: 假设 ...

  9. 2022-05-14 Git三种合并分支Merge、Squash merge、Rebase merge

    Git三种合并分支Merge.Squash merge.Rebase merge 前言 合并分支 Merge Rebase merge Squash merge 前言 开发过程中,一般按照Git Fl ...

最新文章

  1. php url传递参数_python+Requests接口自动化测试之传递 URL 参数
  2. 计算机技术应用体验,信息技术应用体验学习心得体会
  3. 教程:创建简单的 ETL 包
  4. 总结-各种安全漏洞学习环境集合(转)
  5. iOS实现经典登录页面,手机号自动格式化
  6. java excel处理框架,Java三方—-excel框架之POI的使用一
  7. hive关于left join 和join时候on条件总结
  8. Java API 设计清单
  9. mysql主从数据库同步问题_聊聊MySQL主从数据库同步的那些事儿
  10. 巧用异或运算符(洛谷P1161题题解,Java语言描述)
  11. bzoj1179 Atm
  12. Office 365 SharePoint 迁移浅谈 (一)开篇介绍
  13. 更改计算机复制快捷键,电脑上怎么把一句话设置快捷键,电脑快捷键复制一句话-...
  14. DevOps使用教程 华为云(15)git如何将本地项目初始化为远程仓库
  15. HandlerSocket安装
  16. Ubuntu18.04安装Adobe flash player
  17. 玩转场景化推送,精准把握受众
  18. Android如何避免抓包
  19. 《卧底经济学》书中精髓:我们如何正确理解“稀缺”这件事儿?
  20. String的普通方法

热门文章

  1. 遗传算法 求解物流配送中心选址问题 免疫算法物流配送中心选址
  2. 这里以Amlogic A113
  3. 牛客网--身份证分组
  4. python群控安卓_Github优秀项目推荐,安卓设备免Root实现低延迟投屏和远控
  5. 【InSAR 笔记1】ASF网站哨兵一号批量下载
  6. 红米Note 3获取root权限的教程
  7. 线性代数基础和英文表述【02】:矩阵的表述和初等行变换【第4-9】Matrix Notation Row Operations REF,RREF
  8. 《WCDMA空中接口技术》读书笔记6: R99 信道与信道解码
  9. Android开发使用jsoup实现网页内容抓取和修改网页内容
  10. noteexpress文献导入到endnotes中