Github - 分叉一个私人仓库

Posted

技术标签:

【中文标题】Github - 分叉一个私人仓库【英文标题】:Github - Fork a private repo 【发布时间】:2012-08-27 14:18:57 【问题描述】:

我已被添加到具有一些私有存储库的组织中,我需要向他们发送包含一些更改的拉取请求,但我不知道是否可以。

我在 GitHub 上没有付费帐户,那么我如何分叉该私人仓库来修改和发送拉取请求?

【问题讨论】:

【参考方案1】:

如“If I fork someone else's private Github repo into my account, is it going to appear in my account as a public repo?”中所述,您可以分叉一个私人回购(您被添加为私人用户)。生成的 repo 仍然是私有的,您将能够提出 pull-requests。

【讨论】:

当您说“您被添加为私人用户”时,它与添加为协作者相同吗?这是唯一可以“看到”私人回购以便分叉的方法吗? @jaywalking101 这是我知道的唯一方法,至少。【参考方案2】:

您可以从私有存储库中的分支发出拉取请求,而无需分叉。

我们开始使用的工作流程是:

 1. clone the private repository
 2. make a branch
 3. work on the branch
 4. push the branch to the private repository
 5. goto GitHub and create a pull request from the branch on the private repository
 6. someone else reviews the the pull request and decides to merge it with master on GitHub
 7. delete the branch unless there was a problem and it was not merged then go back to #3

【讨论】:

或者你可以使用git flow... 当你说“克隆私有存储库”(然后在第 5 步中谈到去 GitHub 上的公共存储库创建拉取请求)时,这称为分叉。克隆 GitHub 上的存储库(复制到您自己在 GitHub 上的私有副本)就是所谓的分叉。 如果您有权访问组织的私有存储库(本质上是只读访问),则此工作流程是不可能的,但您没有被添加为其中一个存储库的协作者。我不得不使用@VonC 的解决方案(效果很好!!) 我正在与另一个组织(组织 A)合作。组织 A 有他们的私有存储库。他们已将我添加为合作者。我是另一个组织 (Org B) 的一员。我让我的团队作为 Org B 的一部分工作。我或我的 Org B 都没有付费帐户。组织 A 已支付帐户。我想将 Org A 的项目分叉到 Org B。然后让我的团队完成某些任务。然后我想生成从 Org B 到 Org A 的 Pull Request。使用分支方法,我不能让我的 Org B 团队工作。我怎样才能做到这一点。 @DavidAlpert 看起来fork 是一个重载的词。在 GitHub 的上下文中,当您按下该 fork 按钮时,它会询问您要将存储库克隆到 GitHub 上的哪个位置。我建议你将它克隆到你的本地机器上工作并向上推以创建一个 PR,事实证明,这也称为分叉。您无需将其克隆到您的 GitHub 帐户(点击该 Fork 按钮)即可创建 PR。

以上是关于Github - 分叉一个私人仓库的主要内容,如果未能解决你的问题,请参考以下文章

github设置仓库可见性 私人仓库设置他人协作/可见

尝试发布到包时,Github Actions 工作流(私人仓库)挂起

利用github搭建私人maven仓库

在 Github 上公开分享私人回购的一部分

在 GitHub 上有一个公共仓库的私有分支?

git使用