当前位置: 首页 > news >正文

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

http://www.lryc.cn/news/370036.html

相关文章:

  • Docker引起的漏洞问题
  • Oracle基本数据类型
  • VS+QT+OCC创建坐标界面
  • VUE2.7项目配置webpack打包-详细操作步骤
  • Linux系统Docker部署Apache Superset并实现远程访问详细流程
  • Cochrane Library循证医学数据库的介绍及文献下载
  • 冯喜运:6.12今日黄金原油行情还会涨吗?黄金原油独家操作策略
  • VM ubuntu终端使用Host代理的方法
  • 【2024最新华为OD-C/D卷试题汇总】[支持在线评测] 破译犯罪时间(100分) - 三语言AC题解(Python/Java/Cpp)
  • 大模型学习之GLM结构
  • C#类库打包支持多个版本的类库
  • 一文介绍暗区突围手游 游戏特色、具体玩法和独特的玩法体验
  • Unity基础(三)3D场景搭建
  • 在Spring Boot中使用Sa-Token实现路径拦截和特定接口放行
  • 【面经总结】Java基础 - 注解
  • Matlab笔记
  • android 编译源码添加日志打印
  • Vue19-key的原理
  • 零一科技Yi-VL 6B视觉大模型环境搭建推理
  • Django面试题
  • Perl语言入门学习
  • Autoformer
  • uniapp录音播放功能
  • ✊构建浏览器工作原理知识体系(网络协议篇)
  • 【AI大模型】Transformers大模型库(八):大模型微调之LoraConfig
  • 8-1RT-Thread消息队列
  • 解除网站IP抓取限制的方法有哪些?
  • “手撕”二叉树的OJ习题
  • Linux Mint 21.3简介
  • C++11 面试题整理