为什么要使用git fetch或pull
为什么要使用git fetch或pull
这个问题已经有了答案:
我已经阅读了一些有关fetch和pull的文章。我明白了如果想要把本地的内容推送到远程仓库,必须使用fetch。我也知道,如果需要检出远程仓库中的新分支,则需要从远程仓库中拉取来更新本地的跟踪分支。我的问题是,为什么我不能直接pull呢?为什么大多数开发者建议使用fetch呢?在什么情况下只需要进行fetch操作?请为我举个例子。
admin 更改状态以发布 2023年5月25日
git fetch
会更新您在本地仓库的副本,但不会修改工作目录中的任何文件。它只是确保从您提取的仓库的缓存信息是最新的。(如果其他人自上次提取以来创建了新的分支或添加了某些提交,git将了解到这些情况。)
git pull
是git fetch
后跟git merge FETCH_HEAD
的简写。也就是说,它会运行git fetch
,然后将远程仓库的更改合并到您当前的分支和工作目录中。(正如Mark指出的那样,这实际上修改了HEAD
。)
所以,您应该使用的命令取决于您是否要更新您的工作目录以反映其他人自上次拉取以来所做的提交。