将原始GitHub存储库中的新更新引入分叉的GitHub存储库
我在GitHub上分发了某人的存储库,并希望使用原始存储库中提交的更新和更新来更新我的版本。 这些都是在我分出我的副本之后做出的。
我怎样才能引入原点中所做的更改并将它们合并到我的资源库中?
您必须将原始存储库(您分叉的那个)添加为远程存储库。
从GitHub fork手册页:
一旦克隆完成,你的repo将有一个名为“ origin
”的远程指向你在GitHub上的fork。
不要让这个名字让你感到困惑,这并不意味着你所分出的原始回购。 为了帮助您跟踪该回购,我们将添加另一个名为“upstream”的远程设备:
$ cd github-services
$ git remote add upstream git://github.com/pjhyett/github-services.git
$ git fetch upstream
# then: (like "git pull" which is fetch + merge)
$ git merge upstream/master master
# or, better, replay your local work on top of the fetched branch
# like a "git pull --rebase"
$ git rebase upstream/master
你也有一个可以促进这些GitHub操作的红宝石宝石。
另请参阅“Git fork是git clone?”。
除了VonC的回答外,你还可以根据自己的喜好调整它。
从远程分支中获取后,您仍然必须合并提交。 我会替换
$ git fetch upstream
同
$ git pull upstream master
因为git pull本质上是git fetch + git merge。
本视频演示如何直接从GitHub更新分支
脚步:
Pull Requests
。 New Pull Request
。 默认情况下,GitHub会将原始文件与您的分叉进行比较,如果您未做任何更改,则不应该有任何比较。 switching the base
。 现在GitHub会将您的分支与原始分支进行比较,并且您应该看到所有最新的更改。 Create a pull request
,并为您的拉取请求分配一个可预测的名称(例如,从原始更新)。 Create pull request
。 Merge pull request
,最后Confirm
合并。 如果您的分支没有任何更改,您将能够自动合并它。 上一篇: Pull new updates from original GitHub repository into forked GitHub repository