详解git的分支与合并的两种方法

 更新时间:2020年07月22日 14:19:35   作者:kingdom_wp  
这篇文章主要介绍了详解git的分支与合并的两种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

如何将两个分支合并到一起。就是说我们新建一个分支,在其上开发某个新功能,开发完成后再合并回主线。

1.   git merge

咱们先来看一下第一种方法 —— git merge

在 Git 中合并两个分支时会产生一个特殊的提交记录,它有两个父节点。翻译成自然语言相当于:“我要把这两个父节点本身及它们所有的祖先都包含进来。”下面具体解释。

# 创建新分支 bugFix
git branch bugFix

# 切换到该分支
git checkout bugFix

# 提交一次
git commit

#   切换回 master
git checkout master

#  再提交一次
git commit

# 用 git merge 把 bugFix 合并到 master
git merge bugFix

(master 的分支被混入到所有的提交记录,但 bugFix 没有,所以要进行下面的操作)

# 再把 master 分支合并到 bugFix(因为 master 继承自 bugFix,Git什么都不用做,只是简单地把 bugFix 移动到 master所指向的那个提交记录。)
git checkout bugFix;
git merge master

2.  git rebase

第二种合并分支的方法是 git rebase。rebase 实际上就是取出一系列的提交记录,“复制”它们,然后在另外一个地方逐个的放下去。

Rebase 的优势就是可以创造更线性的提交历史,这听上去有些难以理解。如果只允许使用 Rebase 的话,代码库的提交历史将会变得异常清晰。

# 创建新分支 bugFix分支
git branch bugFix

#提交一次(提交在master分支上)
git commit

# 切换到bugFix分支
git checkout bugFix

# 提交一次(提交在bugFix分支上)
git commit

#使用git rebase把 bugFix 分支里的工作直接移到 master 分支上(移动以后会使得两个分支的功能看起来像是按顺序开发,但实际上它们是并行开发#的)。
git rebase master

注意:提交记录 C3 依然存在(树上那个半透明的节点),而 C3'是我们 Rebase 到 master 分支上的 C3 的副本。

#切换到master分支上(为了进行更新master的操作)
git checkout master

#把master的 rebase 到 bugFix 分支上(由于 bugFix 继承自 master,所以 git 只是简单的把 master 分支的引用向前移动了一下而已。)
git rebase bugFix

到此这篇关于详解git的分支与合并的两种方法的文章就介绍到这了,更多相关git分支与合并内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 浅析HTTP3

    浅析HTTP3

    本文简单介绍了HTTP协议,以及介绍了HTTP的成长,不同HTTP解决的问题等方面,详细讲解了HTTP3,感兴趣的小伙伴一起来看看吧
    2021-08-08
  • yum的基本用法和实例(推荐)

    yum的基本用法和实例(推荐)

    这篇文章主要介绍了Linux(centos8)下的yum的基本用法和实例,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-02-02
  • Windows、IDEA、VS Code常用快捷键汇总

    Windows、IDEA、VS Code常用快捷键汇总

    这篇文章主要介绍了Windows、IDEA、VS Code常用快捷键汇总,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-04-04
  • Git使用小技巧之回滚与撤销详解

    Git使用小技巧之回滚与撤销详解

    这篇文章主要给大家介绍了关于Git使用小技巧之回滚与撤销的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Git具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-07-07
  • Git配置别名简化操作命令方式详解

    Git配置别名简化操作命令方式详解

    这篇文章主要为大家介绍了Git配置别名简化操作命令方式详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06
  • Vertica集成Apache Hudi重磅使用指南

    Vertica集成Apache Hudi重磅使用指南

    这篇文章主要为大家介绍了Vertica集成Apache Hudi的重磅使用指南,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步早日升职加薪
    2022-03-03
  • git如何将master分支上的代码合并到自己新建的分支上

    git如何将master分支上的代码合并到自己新建的分支上

    当新建分支未及时跟踪master分支的更新,导致拉取时出现无跟踪信息的提示,解决方法是先切换到master分支,进行git pull操作获取最新代码,然后切换回自己的分支并合并master的代码,最后将更新后的分支推送到远程仓库,这样确保新建分支能与master保持同步
    2024-09-09
  • 码云git图文使用详解教程

    码云git图文使用详解教程

    这篇文章主要介绍了码云git图文使用详解教程,需要的朋友可以参考下
    2020-11-11
  • git stash(储藏)的用法总结

    git stash(储藏)的用法总结

    本文详细讲解了git stash(储藏)的用法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • IntelliJ IDEA 性能优化的教程详解

    IntelliJ IDEA 性能优化的教程详解

    这篇文章主要介绍了IntelliJ IDEA 性能优化的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05

最新评论