git rebase

1. git rebase的意义

首先理解这个rebase,它的意思是re base,翻译过来就是“重新基于”。

意义是:重新整理当前分支的开发线,使其变成基于某个开发节点的开发线。

2. rebase用于并行开发

构造两个分支master和feature,其中feature是在提交点B处从master上拉出的分支

master上有一个新提交M,feature上有两个新提交C和D

此时我们切换到feature分支上,执行rebase命令,相当于是想要把master分支合并到feature分支(这一步的场景就可以类比为我们在自己的分支feature上开发了一段时间了,准备从主干master上拉一下最新改动。模拟了git pull --rebase的情形) 

# 这两条命令等价于git rebase master feature
git checkout feature
git rebase master

下图为变基后的提交节点图,解释一下其工作原理:

  • feature:待变基分支、当前分支
  • master:基分支、目标分支

3. git rebase用于合并提交

开发过程中遇到紧急需求,当前分支的代码需要临时commit,偶尔commit几次,最后要提交远程的时候,就会发现本来只有一个功能模块,却有7 8次commit,想要解决这个问题,执行git rebase -i进入交互模式,可以看到有本地所有的commit记录,想要保留最近两次,那就删除其他的pick行,:wq退出交互模式,依次解决冲突,提交后OK。

参考文献

git rebase详解(图解+最简单示例,一次就懂)-CSDN博客

git rebase (合并代码和整理提交记录)图文详解-CSDN博客

https://juejin.cn/post/7018098150845972516

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值