如何制作GitHub项目的第二个分支?

pix*_*iry 29 github

我想分叉一个github项目来解决几个问题,然后发送一个pull请求.

我遇到的问题是我已经分叉了项目以使其适应另一个用户群.

是否可以创建第二个分叉?如果是这样,怎么样?

当我尝试现在分叉时,它只需要我以前创建的fork.

pix*_*iry 8

除非您使用两个不同的GitHub帐户,否则无法拥有同一GitHub项目的两个分支.

所以:

  1. 创建一个单独的GitHub帐户(并验证电子邮件)

  2. 分叉项目

  3. 邀请您的主要GitHub帐户作为"协作者"(来自设置)

您可能需要添加使用新GitHub帐户创建组织的额外步骤,并邀请您的主github帐户作为组织的所有者(还要确保您的新分支在新组织中).这样您就可以自动部署到连接到主GitHub帐户的Heroku应用程序.

为什么我们不能只有多个叉子???

  • @Liggiluff -- 感谢您阅读 Github TOS 并告诉我们。 (3认同)
  • 距离这个回答已经过去3年了,还有更新吗? (3认同)
  • 根据Github上的服务条款,不允许您拥有第二个免费帐户。除非您付费,否则这肯定会限制您选择分叉项目。 (2认同)

Chr*_*ris 6

我的意思是我可以在没有提出拉取请求的情况下提交和推送,但我想以正式方式执行此操作,并且我希望其他人在推送到公共项目之前查看更改.

GitHub拉取请求不需要从fork提交; 它们也在单个存储库中工作:

Pull请求在fork&pull模型中特别有用,因为它们提供了一种向fork维护者通知fork更改的方法.但是,它们在共享存储库模型中也很有用,它们用于在合并到主线分支之前启动代码审查和有关一组更改的一般讨论.

即使您不需要技术,也没有什么可以阻止您创建拉取请求.这通常被认为是最佳实践,而GitHub自己的Flow模型主要基于拉取请求.

在单个存储库中创建拉取请求与从fork 创建拉取请求非常相似:

  1. 创建一个功能分支,并将您的工作推送到GitHub上的该分支
  2. 在GitHub Web UI中,切换到功能分支
  3. 点击"比较"和评论按钮

  • 有时你只需要两把叉子. (4认同)
  • @pixelfairy,官方答案是“有点”。据我所知,没有办法在您的帐户下创建另一个分叉 * 使用 Web UI 的分叉按钮*。(您可能想调查 [organizations](https://github.com/blog/674-introducing-organizations)。)但归根结底,分叉只是存储库的副本。您可以轻松创建一个新的空存储库,将其命名为“project-fork”,然后推送到它。请参阅 http://stackoverflow.com/questions/12338240/how-can-i-fork-the-original-repo-when-ive-already-forked-a-different-fork 以获得更全面的答案。 (2认同)

ccp*_*zza 4

诀窍是不要使用master分支来创建拉取请求。然后,您将不需要创建多个分支,因为您可以根据需要创建任意数量的分支,并对每个分支独立发出拉取请求。

\n

给定一个干净的分叉存储库,创建一个专用分支并将该分支用于拉取请求。

\n

您可以直接从 Web UI 创建分支(尽管可能并不明显)。

\n

单击分支选择下拉列表,在输入字段中键入新分支名称,然后您将看到一个可单击的链接Create branch: <new-branch-name>,如下所示。棘手的 UI 部分是,您可能不明显应该单击\xe2\x80\x94,它不会显示为按钮或超链接,而且这是一个可单击的链接并不明显。任何人都可能认为搜索框是用于搜索分支,而不是用于创建分支。鉴于它显示为搜索字段,人们可能会忽略纯粹因为视觉认知失调而表示的占位符。"create branch: xyz..." Find or create a branch...

\n

github网络创建分支

\n

如果您已经直接在分支master分支中进行了更改,请考虑将这些更改移动到专用分支,然后将分支硬重置master到原始远程,以便您可以保持其干净以便与上游存储库同步。

\n

也可以看看:

\n\n