现在我们有一个主分支dev,现在有一些feature分支,需要偶尔将dev分支的稳定代码合入feature分支,所以用到git merge

现在整理下git merge的几个概念和用法

Fast forward 

https://blog.csdn.net/qq_25800311/article/details/81986263

当前分支合并到另一分支时,如果没有分歧解决,就会直接移动文件指针。这个过程叫做fastforward

举例来说,开发一直在master分支进行,但忽然有一个新的想法,于是新建了一个develop的分支,并在其上进行一系列提交,完成时,回到 master分支,此时,master分支在创建develop分支之后并未产生任何新的commit。此时的合并就叫fast forward。

1、git merge dev

是将dev的分支合并到当前分支,应该默认是fast forward模式

2、git merge dev --no-ff

https://blog.csdn.net/qq_39416311/article/details/81264792

--no-ff指的是强行关闭fast-forward方式。

ast-forward方式就是当条件允许的时候,git直接把HEAD指针指向合并分支的头,完成合并。属于“快进方式”,不过这种情况如果删除分支,则会丢失分支信息。因为在这个过程中没有创建commit

3、git merge dev --squash

是用来把一些不必要commit进行压缩,比如说,你的feature在开发的时候写的commit很乱,那么我们合并的时候不希望把这些历史commit带过来,于是使用--squash进行合并,此时文件已经同合并后一样了,但不移动HEAD,不提交。需要进行一次额外的commit来“总结”一下,然后完成最终的合并

Gerrit

1、--no-ff  合并后生成的一个commit如果push到gerrit不是一个单独的change,无法通过cherry-pick下载合并

在gerrit的change格式是:http://git.****.com/#/c/767312/-1..6

2、--squash 是生成一个单独的commit,一个单独的change,可以通过cherry-pick下载并合并到本地

git merge的用法相关推荐

  1. git rebase和git merge的用法

    http://softlab.sdut.edu.cn/blog/subaochen/2016/01/git-rebase%E5%92%8Cgit-merge%E7%9A%84%E7%94%A8%E6% ...

  2. git 只merge部分_[Skill]俩小时掌握多人开发中git的主要用法

    前言 几个月前看完了git文档,但是在实际开发中对很多git命令的具体影响仍有疑惑,比方说pull.fetch和rebase三个命令和检出位置拎不清. Git - Book​git-scm.com 安 ...

  3. git merge用法_常用命令之git操作(进阶篇)

    几乎每一种版本控制系统都以某种形式支持分支.使用分支意味着你可以从开发主线上分离开来,然后在不影响主线的同时继续工作. 有人把 Git 的分支模型称为必杀技特性,而正是因为它,将 Git 从版本控制系 ...

  4. git merge用法_Git 基本命令 merge 和 rebase,你真的了解吗?

    前言 Git 中的分支合并是一个常见的使用场景. 仓库的 bugfix 分支修复完 bug 之后,要回合到主干分支,这时候两个分支需要合并: 远端仓库的分支 A 有其他小伙伴合入了代码,这时候,你需要 ...

  5. git merge最简洁用法

    一.开发分支(dev)上的代码达到上线的标准后,要合并到 master 分支 git checkout dev git pull git checkout master git merge dev g ...

  6. git merge 用法

    怎么 merge 首先更新本地分支和远程分支为最新代码, 分别对要参与 merge 的两个分支做如下两个操作: 切换分支 git checkout <branch_name> 更新分支 g ...

  7. git 中merge的用法

    git merge –no-ff 可以保存你之前的分支历史.能够更好的查看 merge历史,以及branch 状态. git merge 则不会显示 feature,只保留单条分支记录.

  8. 怎么把好几行弄成一行_我在git merge的时候遇到了冲突,怎么解决?

    大家好,今天来和大家聊一个老生常谈的问题,我们在使用git merge的时候遇到了冲突,怎么办? 首先我们来看看为什么会冲突,git冲突的原因很简单,就是两个分支当中对同一处代码进行了不同的改动.于是 ...

  9. git merge和git merge --no-ff有什么区别?

    本文翻译自:What is the difference between `git merge` and `git merge --no-ff`? Using gitk log , I could n ...

最新文章

  1. 老司机给我们解读 Spring Boot 最流行的 16 条实践忠告
  2. Android短信的发送和广播接收者实现短信的监听
  3. 003_Spring使用Slf4j和logback日志
  4. Dynamics CRM 提示“操作无效”
  5. android oom 检测工具,Android中UI检测、内存泄露、OOM、等优化处理
  6. 安利十二个常用的IPython魔法命令
  7. 轻松搞定RabbitMQ(二)——工作队列之消息分发机制
  8. Flask笔记-使用Cookie及简单加密判断是否为登录用户
  9. 利用HTML5中Geolocation获取地理位置在Google Map上定位
  10. PCA和线性回归之间的关系如何?
  11. python---之round
  12. C++ 数据结构,vector与栈介绍
  13. Rust:阴阳谜题输出
  14. 硬笔行书字帖3500常用字_2018年【成年人实用硬笔行书】一对一直播培训简介
  15. 伴随矩阵例题_考研数学一真题详解:伴随矩阵有关问题
  16. 太阳直射点纬度计算公式_高中地理——每日讲1题(欧洲的气候、太阳高度角、日出时间)...
  17. vue中使用市区(地区)联动 复制三步完成
  18. java fifo lifo_栈方法 LIFO - 队方法 FIFO
  19. 蝴蝶效应、青蛙现象、鳄鱼法则、鲇鱼效应、羊群效应、刺猬法则
  20. 值得学习的100个网站推广方法

热门文章

  1. 南邮CTF部分篇章WP
  2. 应用之星:2014年电子书市场分析报告
  3. 华为x86服务器有哪些型号,服务器采购有哪些陷阱?_华为服务器_服务器x86服务器-中关村在线...
  4. Python 爬虫(一):爬虫伪装
  5. 2021年7月17日日志
  6. 【技术沙龙总结】福州朴朴01期 - 演进史
  7. MODIS(中分辨率成像光谱仪)简介
  8. 流式DMA映射实践1:先写一个misc驱动框架
  9. 水准路线平差c语言程序,水准网条件平差程序设计-范文.pdf
  10. LTE宏微协同组网中的干扰抑制技术研究