16

我从源 A 在 Github 上 fork 了一个项目。从那时起,标准做法是不向 A 发出拉取请求,而是向 B 发出拉取请求。这意味着每个拉取请求,我必须手动指定拉取请求的目的地——有点乏味.

有没有办法永久更改我的叉子的来源?

4

2 回答 2

6

一开始我没有找到它,但一种解决方法是制作另一个叉子,这次是从source B, 和:

  • 克隆那个新的叉子。
  • 将您的初始本地克隆添加为远程
  • 从您的第一个本地克隆中获取,以便获取您当前的所有工作
  • 把你的工作推到第二个叉子上

至少,这第二个分叉将为所有拉取请求提供正确的目的地。

注意:OP Steve Bennett提醒我们:

Github 不允许你对同一个存储库进行两次分叉
(也就是说,你分叉A来做C,然后别人分叉A来做B——你不能分叉C来做D。你得到“ Your Fork”按钮)

所以我建议在另一个帐户下进行第二次分叉

您可以从本地克隆管理多个帐户,这将允许您绕过 GitHub 对多个分叉的限制。

于 2012-03-10T11:42:40.140 回答
6

这不是对@VonC 答案的一个很好的补充,但我通过删除原始分叉然后从正确的源代码库中分叉来做到这一点。

如果你有想要保留的本地分支,只需在操作后将它们推送到新的分支。在删除之前,请确保您已从原始分叉中获取所有内容。

IMO 这是 github 的限制之一,它没有意义,并且应该很容易修复,只要有一点善意。

于 2014-07-17T08:33:12.470 回答