当我已经分叉了一个不同的分叉时,我怎样才能分叉原始的回购

我以前分叉jockm / vert.x并发送给他一个拉请求。 现在我想要fork vert-x / vert.x(jockm / vert.x的上游)并向它们发送不同的请求。 但是,当我点击Forkbutton时,我不明白地发现我最终在jockm / vert.x的tjcrowder / vert.x分支中。 是否可以同时fork vert-x / vert.x和jockm / vert.x,这样我可以根据需要发送每个pull请求?

我担心的答案可能与这个问题的相反的情况是相同的(“没有GitHub的方式,但你可以添加一个远程回购”),但我希望否则 – 至less是因为我没有看到答案那我就可以发送拉请求到新的远程。

没有GitHub的方式(小谎言,见下文),但也没有什么可怕的。

根据定义,叉子的叉子原始叉子。 当您打开拉取请求时,您可以select拉取请求的来源和目的地。 那里可用的select显然取决于叉形图,但只要在两个存储库之间的graphics中存在path,就应该是安全的。 另外,由于拉请求在网站上,你甚至不需要添加远程,只要你不想从git使用它。

当然,现在你可能要重新考虑你在这个图表中的位置,并且让自己成为真正的上游的直接孩子,但这大多是无关的。

如前所述,实际上有一个扭曲的方式来有多个叉,这是创build组织和分叉。 这样,您可以在同一个图中“拥有”多个存储库。 但是真的没有必要去那里。

感谢西格玛的回答 ,我看到,当我去jockm / vert.x仓库做上拉请求时,不仅上游仓库可用,而且上游仓库的所有其他货叉也是如此。 所以我最终做的是:

  1. 删除我的jockm / vert.x的分支,而是分支vert-x / vert.x,因为大多数情况下我想在主上游回购库中工作,而不是在jockm的版本。
  2. 为我想发送给jockm的提交创build一个分支,为我想发送到vert-x的提交创build一个单独的分支。
  3. 对每个分支进行相关更改。
  4. 因为jockm / vert.x仓库被列为请求的可能目标(以及大约200个其他货叉),所以将每个分支的请求发送到相关仓库。

我使用了单独的分支(基本上是主题分支),因此这些提交将保持在这些pull请求中唯一的事情,因为同一分支上的后续提交会自动添加到pull请求中,并且这些更改需要保持孤立直到/除非合并。

看起来更好的select是在fork上创build一个分支,并从该分支创build一个pull请求。 你可以使用分支来“分叉”你的版本

我没有看到关于“多叉”的任何细节,所以我可能最终创build另一个GitHub帐户,在这个帐户下,我将做第二个克隆,并发送不同的拉请求到vert.x/vert.x

由于您可以在同一台计算机上安装“ 多个github帐户 ”(使用正确的sshconfiguration文件 , 这里也有描述 ),这是一种可能的解决方法。

您也可以在您的个人资料/设置下创build一个新的组织。 然后,您可以通过同一个帐户分配同一原始回购的不同状态。