【每日一题NO.74】说下git pull和git pull -rebase的区别

共 739字,需浏览 2分钟

 ·

2021-11-01 18:38

85aabb7a226be9a61db4b1c9f4061053.webp

5ce0557a2d9a287e1b7b3ca125a940af.webp

二者区别

git pull 的作用是:取回远程主机某个分支的更新,再与本地的指定分支合并。在默认模式下,git pull 是 git fetch 后跟 git merge FETCH_HEAD 的缩写

git pull 使用给定的参数运行 git fetch,并调用 git merge 将检索到的分支头合并到当前分支中。

而使用git pull --rebase时,它运行 git rebase 而不是 git merge

二者差异对比如下:

git pull = git fetch + git merge FETCH_HEAD 
git pull --rebase = git fetch + git rebase

git rebase 与 git merge 的区别

git merge会直接合并远端分支,有冲突时创建一个新的 commit 再提交。

git rebase 则是将本地的 commit 跟合并后有冲突的 commit 整合到一起,再提交到远端。这样可以保证 git 提交节点在一条线上,而不会因为冲突 commit 多出一个不在主流程线上的提交记录。

推荐

一个在线交互式学习git的网站Learn Git Branching[1]

778e26b68ec7679c4e055d4afa04cb4f.webp

推荐学习资料

[1]

学习Git的游戏网站: https://learngitbranching.js.org/?locale=zh_CN

dabf2b8a0780b3ede64c0e003761a073.webp


所有《每日一题》的 知识大纲索引脑图 整理在此:https://www.yuque.com/dfe_evernote/interview/everyday
你也可以点击文末的 “阅读原文” 快速跳转

c399548bb0965f007b7965f0ad025d38.webp
END愿你历尽千帆,归来仍是少年。


浏览 114
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报