我怎样才能保持我的叉同步,而无需添加一个单独的远程?
假设GitHub上有一个repository someone/foobar
,我把它分配给了me/foobar
。
如何从父仓库直接 将新提交提交 到我的分支 ,而不必添加一个单独的远程, 并记得定期从那里 ?
目标是:
-
git pull
从父存储库中获取 -
git push
一切到我的叉子
打开叉git回购我/ foobar
点击比较
你会得到这个通知“没有什么可比较的。
某人/ foobar与我/ foobar的所有提交都是最新的。 尝试切换基地进行比较。“
点击这个页面切换基地。
然后,你可以看到所有提交给他人/ foobar后,你分叉它的一天。
点击“点击创build拉比请求”
给拉请求一个标题,也许一个描述,然后点击发送拉请求。
在下一页上,滚动到页面底部,然后单击合并请求并确认合并。
你的Git repo me / foobar将会被更新。
干杯..
git remote set-url origin git@github.com:someone/foobar git remote set-url origin --push git@github.com:me/foobar
但有一个警告:
这是完美的,如果你是唯一一个改变你的叉子。
但是,如果与其他人共享,则可能需要从您的分叉中拉出,在这种情况下,单独的远程是唯一的解决scheme。
编辑:
其实,你可以 git pull git@github.com:me/foobar
,这可以解除警告。
select是你的,哪一个更容易记住。
我用一个相当简单的方法使用Github Web UI来做到这一点:
- 打开原来的git回购(而不是叉git回购我/ foobar)
- 跳转到src文件夹,然后打开要更改的文件
- 点击钢笔图标,它会自动在您的个人分支中创build一个名为“patch-1”的标签,该标签基于主回购的当前版本
- 请享用!
另一个select是使用Github for Mac中的Update from upstreamRepoName/master
buttonUpdate from upstreamRepoName/master
(我假定Github是Windows)。