O
的官方存储库,拥有分支B1
、B2
和B3
。一个用户在他的Github账户上fork了这个存储库,并且创建了一个自己的分支
B4
并公开可用。我也fork了同样的官方存储库,但是我想要fork那个用户的
B4
分支,而不影响我的原始副本。我不能再次fork整个官方存储库,因为我已经为自己创建了几个自定义分支。
那么,如何将一个特定的分支fork到我的Github存储库中?
git remote add other-user http://github.com/otheruser/repo
然后在您的存储库中对该分支进行本地检出。
git checkout -b B4 other-user/B4
最后,将该分支推送到托管在GitHub上的存储库中。
git push origin B4:B4
将该用户的代码库作为您工作目录下的“远程代码库”添加:
```git remote add someuser https://github.com/someuser/somerepo.git
完成此操作后,您需要从该用户的代码库中获取更改。以后,您可以在任何时候执行此操作,而不会影响本地代码库中的其他内容。
git fetch someuser
B4
分支合并到您自己的B5
中:git checkout -b B5 someuser/B4
即创建一个名为B5
的新分支(-b
),起点使用someuser/B4
。
git branch -r
命令时,它显示了远程 /someuser
下的存储库。现在,我该如何将它推送到我的 Github 存储库? - xangit fetch someuser branchname
- Donshel@keelerm提供的答案是正确的,但可能会因为该答案所遵循的命名约定而引起一些混淆。
假设你要克隆的用户分支拥有github用户名Naruto
。因此,基本上是Naruto
从官方仓库O
创建了一个名为B4
的分支,你想要这个分支存在于你的系统中。
首先,检查是否已经添加了Naruto
的远程仓库,使用git remote -v
命令。 如果你看到类似https://github.com/Naruto/O (fetch)
和https://github.com/Naruto/O (push)
的东西,说明你已经添加了远程仓库。 跳到第3步。
在这一步中,我们将添加Naruto
的O
分支的远程仓库,以便我们可以从中获取所有信息。选择任何方便的名称用于引用远程仓库。 为了说明目的,我将使用Kyuubi
。使用此命令:git remote add Kyuubi https://github.com/Naruto/O
现在,你需要从Naruto
的仓库中获取更改。 使用此命令:git fetch Kyuubi
在这一步中,我们将从Naruto
的B4
创建自己的分支myB4
。使用此命令:git checkout -b myB4 Naruto/B4
如果你需要立即在Github上反映同名的myB4
分支,请使用此命令:git push origin myB4:myB4
就是这样。现在,你拥有了一个名为myB4
的分支来自Naruto
的派生仓库O
,你的分支myB4
包含与Naruto
的B4
相同的信息。
fatal: git checkout: updating paths is incompatible with switching branches.
您可以在此处查看存储库:https://github.com/tmuras/moodle
。我想fork分支gs
。请帮帮我! - xan