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...

相关推荐
早睡早起头发多2 小时前
Git 场景化实战指南:从菜鸟到高手的完整攻略🚀
github
掘金安东尼2 小时前
Rspack 推出 Rslint:一个用 Go 编写的 TypeScript-First Linter
前端·javascript·github
不午睡的探索者2 小时前
FFmpeg + WebRTC:音视频开发的两大核心利器
c++·github·音视频开发
梓羽玩Python2 小时前
3分钟搭建 MCP 交易平台,这个开源项目帮你搞外快!
人工智能·github·产品
dora3 小时前
DoraFund 2.0 集成与支付教程
android·区块链·github
Dontla3 小时前
脚本:git push直到成功(windows powershell命令)(Github连不上、Github断开)
git·github
CAE虚拟与现实4 小时前
GitHub Desktop 和 Git 命令行工具(CLI)各有优势
git·github·github desktop
RePeaT4 小时前
代码双仓库备份指南:三种简单高效的方法
git·github
uhakadotcom5 小时前
HMAC signature通常是用来干什么的
后端·面试·github