rebase和merge

rebase 和merge区别:

rebase变基,改变基底:rebase会抹去提交记录。

git pull 默认merge,git pull --rebase 变基

rebase

C、D提交属于feature分支,是基于master分支,在B提交额外拉出来的,当我对D进行变基,提交记录只会保留实线部分,虚线的提交记录消失。

feature :待变基分支、当前分支;master :基分支、目标分支。当执行rebase操作时,git会从两个分支的共同祖先(B)开始提取待变基分支上的修改,然后将待变基分支指向基分支的最新提交,最后将刚才提取的修改应用到基分支的最新提交的后面 。feature分支的基底由B提交改为M提交。重点是两个分支变成了一个分支!!!

merge

直接将feature分支的D提交合并到master分支的M提交,以一个新的提交。

区别

merge 会对提交历史进行保留,很显然更适合多人协作开发的场景 ,因为如果出现问题也可以追溯到历史的每一次提交。

rebase 则是会让提交历史更加简洁易读,保持提交历史的线性结构,所以更适合个人开发和整理分支的情况。团队,最好不要使用rebase...

相关推荐
CozyOct120 分钟前
⚡️2025-11-07GitHub日榜Top5|AI舆情分析系统
github
草梅友仁4 小时前
草梅 Auth 1.11.0 发布与 GitHub 依赖安全更新 | 2025 年第 45 周草梅周报
开源·github·ai编程
lkbhua莱克瓦246 小时前
Java基础——集合进阶用到的数据结构知识点1
java·数据结构·笔记·github
lkbhua莱克瓦2410 小时前
Java基础——常用算法3
java·数据结构·笔记·算法·github·排序算法·学习方法
吃饺子不吃馅12 小时前
前端画布类型编辑器项目,历史记录技术方案调研
前端·架构·github
省四收割者12 小时前
GitHub Action工作流语法
笔记·github
QT 小鲜肉13 小时前
【Git、GitHub、Gitee】按功能分类汇总Git常用命令详解(超详细)
c语言·网络·c++·git·qt·gitee·github
散峰而望15 小时前
基本魔法语言函数(一)(C语言)
c语言·开发语言·编辑器·github
oil欧哟16 小时前
GitHub星标3万,OpenAI 官方支持——深度解读 AI Agent 连接协议的行业标准 MCP
人工智能·github