几天前我分叉了一个 GitHub 项目,从它的问题中,我可以看到主分支从那时起进行了一些修改。
当我cd
到这个项目的位置目录并使用git pull
时,它说"已经是最新的"。为什么?
如何更新我的分叉以包含来自原始存储库的提交?
当您分叉仓库时,会在您的 GitHub 帐户上建立原始仓库的副本。这允许对"副本"进行读+写访问。
当原始存储库资源具有有利于您的副本的提交时,请按照以下步骤更新分支的主分支。您可以更新其他分支,但典型的工作流是针对原始存储库更新master
。
- 打开终端
-
cd
到项目目录 -
git remote add upstream <url-of-original-repository>
-
git branch
并验证您是否在master
分支上 -
git pull --rebase upstream master
步骤#5将获取"原始"存储库的所有新提交,将它们应用于master
最后一个merge-base
的分支,然后将分支的所有提交包含在"顶部"。
每当您需要再次更新分叉时,只需运行步骤 #5 中的命令即可。