更新步骤
- 用命令行打开本地仓库所在目录
- 执行git fetch origin master ,从远程的origin仓库的master分支下载代码到本地的origin master
git fetch origin master
- 执行git log -p master… origin/master ,比较本地的仓库和远程参考的区别(按q退出)
git log -p master.. origin/master
- 执行 git merge origin/master ,把远程下载下来的代码合并到本地仓库,远程的和本地的合并
git merge origin/master
理解fetch:
理解 fetch 的关键, 是理解 FETCH_HEAD,FETCH_HEAD指的是:某个branch在服务器上的最新状态。这个列表保存在 .git/FETCH_HEAD 文件中, 其中每一行对应于远程服务器的一个分支。
当前分支指向的FETCH_HEAD, 就是这个文件第一行对应的那个分支。
一般来说, 存在两种情况:
- 如果没有显式的指定远程分支, 则远程分支的master将作为默认的FETCH_HEAD.
- 如果指定了远程分支, 就将这个远程分支作为FETCH_HEAD.
git fetch origin master
这个操作是git pull origin master的第一步, 而对应的pull操作,并不会在本地创建新的branch。设定当前分支的
FETCH_HEAD
为远程服务器的master
分支。
参考资料
- git fetch 更新远程代码到本地仓库:https://www.cnblogs.com/chenlogin/p/6592228.html
- 最简单地将GitHub项目更新到本地仓库:https://blog.csdn.net/beilizhang/article/details/109126823