git fetch & git pull

190 阅读1分钟

概述

通过前面的文章搞清楚 'master', 'origin', 'origin/master'的含义后,本文通过图形方式总结git fetch和git pull的区别与联系。

讲解

- git fetch

git fetch 主要用于同步 存储在本地的有关远端分支的commit信息 与 远端对应分支最新的commit信息

image.png

如上图所示,当本地执行git fetch后,本地有关远端的master分支 后续更新的commit信息 都会同步至本地。 但是本地的master分支指针却不发生变化。如下图所示:

image.png

还需执行git merge origin/master后,即可实现将本地master与origin/master指针指向相同的commit ID。

image.png

- git pull

git pull = git fetch + git merge