git fetch、git merge、git pull都是什么意思?

如果将git fetch理解为将本地代码仓库更新为最新状态,但实际上本地代码仓库没有像预期那样更新为最新状态,因此感到困惑。下面是我调查后得出的结论,作为备忘录整理如下。

关于「origin/master」分支

要理解`git fetch`,首先需要了解”origin/master”分支。

「origin/master」是一个跟踪远程代码库的主分支的分支,就像下面的图示所示的,它位于远程代码库的主分支和本地代码库的主分支之间。

image.png

由于要“追踪远程主分支”,所以跟踪“分支信息”而不是“代码内容”是重要的。

git fetch是什么意思?

git fetch的功能是将远程仓库分支的最新信息拉取到本地仓库的origin/master分支上。
可以知道”远程仓库新增了一个新的分支”这样的分支信息。

image.png

如图所示,本地存储库的主要分支不会被更新。
也就是说,即使在远程存储库中有其他人正在编辑代码,
但在本地存储库的主要分支中,无法查看代码的更改。

git merge是什么意思?

git merge会将本地仓库的origin/master最新信息合并到master。
可以将origin/master的内容合并到本地仓库的master,以便在本地仓库的master分支上查看远程仓库中已更改的部分。

image.png

git pull 是什么意思?

在中国人的角度上,git pull是一个命令,可以同时执行git fetch和git merge操作。
通过从远程存储库的master分支到origin/master分支,
可以一次性地获取最新的信息。

image.png

如果本地存储库的master分支和远程存储库的master分支存在冲突的更改,则需要注意可能会发生冲突。

总结

通过git fetch操作,我了解到本地仓库的master分支内容不会被更新。
另外,为了将本地仓库更新为最新状态,我想要根据情况选择使用git fetch、git merge、git pull来灵活应对。

请把下面的句子用中文进行原生级的改写,只需要一种选择:

求参考

 

广告
将在 10 秒后关闭
bannerAds