我怎样才能保持我的叉同步,而无需添加一个单独的远程?

假设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来做到这一点:

  1. 打开原来的git回购(而不是叉git回购我/ foobar)
  2. 跳转到src文件夹,然后打开要更改的文件
  3. 点击钢笔图标,它会自动在您的个人分支中创build一个名为“patch-1”的标签,该标签基于主回购的当前版本 在这里输入图像说明
  4. 请享用! 在这里输入图像说明

另一个select是使用Github for Mac中的Update from upstreamRepoName/masterbuttonUpdate from upstreamRepoName/master (我假定Github是Windows)。

在这里输入图像说明