【Git分支管理】分支2种合并模式

目录

0.回顾

1.ff模式

2.no-ff模式

3.ff模式转no-ff模式


  • 先提交再合并再提交 

0.回顾

前面介绍了两种情况总结如下: 

  1. master没有修改提交,在dev中修改提交,master和dev合并顺利
  2. master修改提交的同时dev也修改提交了,产生合并冲突☞手动解决☞并再次提交

这两次merge操作分别对应git给我们提供了两次的merge模式。ff模式和no-ff模式。

git log --graph --abbrev-commit 

1.ff模式

Faster forward:git提供的第一种模式(faster forward模式)

  • 将master分支中的内容commit id修改为dev2分支中最新一次提交的commit id
  • 在这种 Fast forward 模式下,删除分⽀后,查看分⽀历史时,会丢掉分⽀信息,看不出来最新提交到底是 merge 进来的还是正常提交的。
  • 此次merge用到是faster-forward模式:看不出是master提交的,还是dev2提交的合并的

2.no-ff模式

no-faster-forward模式:git提供的第二种模式(非faster forward模式)

  • 合并冲突之后,手动解决之后,又进行一次提交。
  • 可以明显看出是合并之后提交的。
  • 这样的好处是,从分⽀历史上就可以看出分⽀信息。例如我们现在已经删除了在合并冲突部分创建的 dev1 分⽀,但依旧能看到 master 其实是由其他分⽀合并得到。

3.ff模式转no-ff模式

git merge --no-ff -m "merge再次提交描述提交的详细信息"  dev2(合并的分支名称)

git merge --no-ff -m "merge with no-ff" dev2

本质是为了回溯历史的时候:到底是直接master提交,还在别的分支上dev2提交了再合并的

相关推荐

  1. git 分支合并

    2024-07-19 03:56:03       63 阅读
  2. git分支-分支管理

    2024-07-19 03:56:03       29 阅读
  3. git分支-分支管理

    2024-07-19 03:56:03       30 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-19 03:56:03       70 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-19 03:56:03       74 阅读
  3. 在Django里面运行非项目文件

    2024-07-19 03:56:03       62 阅读
  4. Python语言-面向对象

    2024-07-19 03:56:03       72 阅读

热门阅读

  1. 一个菜鸟如何在苹果笔记本上学C语言

    2024-07-19 03:56:03       27 阅读
  2. 中西入门哲学史差异记录

    2024-07-19 03:56:03       20 阅读
  3. GitHub敏感信息扫描工具

    2024-07-19 03:56:03       26 阅读
  4. 7大并发容器种类原理解析与应用

    2024-07-19 03:56:03       22 阅读
  5. mstar 开发环境搭建

    2024-07-19 03:56:03       23 阅读
  6. Jupyter Notebook: 是一个强大的交互式计算

    2024-07-19 03:56:03       28 阅读
  7. String、StringBuilder 和 StringBuffer 有什么区别?

    2024-07-19 03:56:03       25 阅读
  8. Windows图形界面(GUI)-DLG-C/C++ - 树形视图(TreeView)

    2024-07-19 03:56:03       27 阅读
  9. 正则表达式

    2024-07-19 03:56:03       24 阅读
  10. 网络同步学习(状态同步,帧同步)

    2024-07-19 03:56:03       24 阅读