如何在已有主分支的情况下从仓库派生一个新分支?

6

我已经将一个仓库fork到我的github账户,成功地将其拉到了我的电脑上,但是原始仓库现在有一个新分支,我也想要它,但是当我尝试fork该分支时,它只会将我带到我的github账户的主分支,并没有实际做任何事情。我该如何在我的账户上获取这两个分支。


从任何地方获取,例如上游的Github存储库。为其添加远程而不仅仅使用URL。存储库之间的通信完全是任意的。 - jthill
这是要从命令行还是GitHub使用?我试图将其放到我的账户上,然后用命令行拉下来。我对Git非常陌生,所以很多命令对我来说都不熟悉。 - bphand95
1
Github并不是大多数真正工作的地方,它更适合处理元数据。 - jthill
1个回答

17
一旦你克隆了你的分支,你可以在本地克隆的存储库中添加一个新的远程引用原始存储库(即你派生的存储库,并且一个感兴趣的新分支出现的地方)。
这是三角工作流

https://cloud.githubusercontent.com/assets/1319791/8943755/5dcdcae4-354a-11e5-9f82-915914fad4f7.png

你所做的是:

cd /path/to/local/repo
git remote add upstream /url/of/original/repo
git fetch upstream

那个最后的获取将包括新分支(在 "remotes/upstream" 命名空间中)。
从那里,您可以轻松地创建一个以 "upstream/newBranch" 为起点的本地分支,并将其推送到您的分叉(由名为 "origin" 的远程引用)。
git checkout -b newBranch upstream/newBranch
git push -u origin newBranch

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接