18

几天前我 fork 了一个 GitHub 项目,从它的问题中,我可以看到 master 分支从那以后进行了一些修改。

当我cd进入该项目的位置目录并使用git pull时,它会显示“已经是最新的”。为什么?

如何更新我的 fork 以包含来自原始 repo 的提交?

4

1 回答 1

45

当你 fork 存储库时,原始存储库的副本会在你的 GitHub 帐户上建立。这允许对“副本”进行读+写访问。

当原始存储库资源具有对您的副本有益的提交时,请按照以下步骤更新您的 fork 的主分支。您可以更新其他分支,但典型的工作流程是master针对原始存储库进行更新。

  1. 打开终端
  2. cd到你的项目目录
  3. git remote add upstream <url-of-original-repository>
  4. git branch并验证您是否在master分支上
  5. git pull --rebase upstream master

步骤 #5 将获取“原始”存储库的所有新提交,将它们应用到master从 last 分支merge-base,然后将所有分支的提交包含在“顶部”。

任何时候您需要再次更新您的 fork,只需运行步骤 #5 中的命令。

于 2013-09-16T14:39:45.157 回答