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

相关推荐
今夕资源网5 小时前
AI声音克隆软件 CosyVoice今夕一键整合包解压即用 阿里巴巴通义实验室开源 github斩获22K星标
人工智能·github·多国语言·声音克隆·零样本语音克隆·感情·ai语音克隆
胡萝卜术7 小时前
从聊天模型到本地执行助手:Remote MCP 多工具 Agent 实战
面试·架构·github
慕容引刀10 小时前
告别Commit信息纠结:使用Git AI Commit插件实现规范化提交
人工智能·git·github·visual studio code·visual studio
GoGeekBaird19 小时前
我开源了 BeeWeave,给 AI Agent 搭一个越用越懂你的知识创作台
后端·github
fthux20 小时前
GitZip Pro 源码解析:一个 GitHub 文件/文件夹下载扩展是如何工作的(一)整体架构与扩展入口
人工智能·ai·开源·github·open source
第一程序员21 小时前
Rust Agent 子进程执行:Command 之前,先定义输入和超时
python·rust·github
2501_936960361 天前
GitHub初步了解
github
wangruofeng1 天前
11 万 Star 的生成式 AI 入门课,Microsoft 做对了什么
github·aigc·ai编程
IOT那些事儿1 天前
GitHub Profile 429: Too Many Requests
github·profile·429
峰向AI1 天前
Agent 看不了视频?这个 7K Star 的开源插件一招搞定
github