为什么merge的时候要用squash
通常我们在用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相关推荐
- git merge --squash改写提交
教程3 改写提交! 7. merge --squash 为了节省时间,这个教程使用现有的历史记录作为本地数据库. 从这里下载 我们移动到stepup-tutorial/tutorial7目录.本地端的 ...
- git hook分支_Git hook(钩子文件)机制
githooks(5) NAME githooks - Hooks(钩子) used by git SYNOPSIS $GIT_DIR/hooks/* 简介 Hooks(钩子),是一些存放于$GIT_ ...
- 如何使用git merge --squash?
我有一个远程Git服务器,这是我要执行的方案: 对于每个错误/功能,我创建一个不同的Git分支 我继续在Git分支中使用非官方的Git消息提交代码 在顶级存储库中,我们必须使用官方Git消息对一个错误 ...
- 聊下git merge --squash
你经常会面临着将dev分支或者很多零散的分支merge到一个公共release分支里. 但是有一种情况是需要你处理的,就是在你的dev的分支里有很多commit记录.而这些commit是无需在rele ...
- 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 ...
- 使用git merge --squash,让commit变得优雅
阅读本文需要3分钟 情景模拟 我们有三个分支,master,develop以及feature特性分支,假定我们开发时使用的是feature分支,我们来这里查看提交记录 当然,使用IDEA内置的 Ver ...
- git merge squash 和 rebase 区别
在合并分支的时候,默认是有三种选项的,分别是 普通的 merge squash merge rebase merge 普通 Merge 说到合并分支,可能我们最熟悉的操作是这样的: 先切换到目标分支: ...
- git merge的三种操作merge, squash merge, 和rebase merge
原链接:https://www.jianshu.com/p/ff1877c5864e git merge的三种操作merge, squash merge, 和rebase merge 举例来说: 假设 ...
- 2022-05-14 Git三种合并分支Merge、Squash merge、Rebase merge
Git三种合并分支Merge.Squash merge.Rebase merge 前言 合并分支 Merge Rebase merge Squash merge 前言 开发过程中,一般按照Git Fl ...
最新文章
- php url传递参数_python+Requests接口自动化测试之传递 URL 参数
- 计算机技术应用体验,信息技术应用体验学习心得体会
- 教程:创建简单的 ETL 包
- 总结-各种安全漏洞学习环境集合(转)
- iOS实现经典登录页面,手机号自动格式化
- java excel处理框架,Java三方—-excel框架之POI的使用一
- hive关于left join 和join时候on条件总结
- Java API 设计清单
- mysql主从数据库同步问题_聊聊MySQL主从数据库同步的那些事儿
- 巧用异或运算符(洛谷P1161题题解,Java语言描述)
- bzoj1179 Atm
- Office 365 SharePoint 迁移浅谈 (一)开篇介绍
- 更改计算机复制快捷键,电脑上怎么把一句话设置快捷键,电脑快捷键复制一句话-...
- DevOps使用教程 华为云(15)git如何将本地项目初始化为远程仓库
- HandlerSocket安装
- Ubuntu18.04安装Adobe flash player
- 玩转场景化推送,精准把握受众
- Android如何避免抓包
- 《卧底经济学》书中精髓:我们如何正确理解“稀缺”这件事儿?
- String的普通方法
热门文章
- 遗传算法 求解物流配送中心选址问题 免疫算法物流配送中心选址
- 这里以Amlogic A113
- 牛客网--身份证分组
- python群控安卓_Github优秀项目推荐,安卓设备免Root实现低延迟投屏和远控
- 【InSAR 笔记1】ASF网站哨兵一号批量下载
- 红米Note 3获取root权限的教程
- 线性代数基础和英文表述【02】:矩阵的表述和初等行变换【第4-9】Matrix Notation Row Operations REF,RREF
- 《WCDMA空中接口技术》读书笔记6: R99 信道与信道解码
- Android开发使用jsoup实现网页内容抓取和修改网页内容
- noteexpress文献导入到endnotes中