我有两个遥控器 - onect 指向我的叉子和上游指向公司repo。
$git remote -v
origin https://github.com/me/app.git (fetch)
origin https://github.com/me/app.git (push)
upstream https://github.com/company/app.git (fetch)
upstream https://github.com/company/app.git (push)
我在一个月之前分叉。而且我一直在努力起源,然后提出拉动请求到上游。这很好。
现在有人在上游创建了一个名为" 3D_Theory"的分支,我想首先将新的分支反映到我的起源中,然后从该分支上工作。但是由于某种原因,分支没有反映我的起源。
我尝试了以下内容:
git remote show origin
>> does not list 3D_Theory
git remote show upstream
>> lists 3D_Theory
我尝试了:
git fetch upstream
git checkout master
git merge upstream/3D_Theory
,但我仍然没有在叉子上创建的分支。我如何在上游上获得一个新的分支来反思我的叉子?
谢谢
以下类似问题都没有帮助我:
- git结帐:更新路径与切换分支不相容
- https://help.github.com/articles/syncing-a-fork/
- 可以" git pull - all quot"更新我所有的本地分支?
是的,我想这有效。
git fetch upstream 3D_Theory:3D_Theory
git status
git push origin 3D_Theory
如果您有更好的解决方案,请在此处发布它,我将尝试您的解决方案并将其标记为更好的答案。
现在可以通过github UI完成。选择代码<>标签,然后单击分支。添加一个新的分支并将源更改为上游存储库。选择要添加到自己的叉子的新分支,并给分支与上游一个相同的名称。
从现在开始,您可以使用同步叉按钮与上游的分支更新分支。
上面只能获取指定的分支。如果团队规模较大,可能会创建许多新的分支。这可以通过以下步骤来完成。
-
这将获取所有上游分支&在终端上显示
git fetch upstream
-
这将把当前分支推向上游
git push origin