我们经常发布文档更新,此页面的翻译可能仍在进行中。有关最新信息,请访问英文文档。如果此页面上的翻译有问题,请告诉我们
文章版本: Enterprise Server 2.14

此版本的 GitHub Enterprise 将停止服务 此版本的 GitHub Enterprise 已停止服务 2019-07-12. 即使出现严重安全问题,也不会发布补丁。要获得更好的性能、更高的安全性和全新功能,请升级到 GitHub Enterprise 的最新版本。 要获取有关升级的帮助,请联系 GitHub Enterprise 支持部门

删除仓库或更改其可见性时,分叉会发生什么变化?

删除仓库或更改其可见性会影响仓库的分叉。

警告:

  • 如果删除某人对私有仓库的访问权限,则其对该私有仓库的所有分叉都将被删除。私有仓库的本地克隆被保留。如果团队对私有仓库的访问权限被撤销或对私有仓库有访问权限的团队被删除,并且团队成员无法通过其他团队访问该仓库,则该仓库的私有分叉将被删除。

  • 启用了 LDAP 同步 时,如果从仓库中删除某人,则该用户将失去访问权限,但其分叉不会被删除。如果该用户在三个月内被添加到对原组织仓库具有访问权限的团队中,则其对分叉的访问权限将在下一次同步时自动恢复。

  • 您有责任确保失去对仓库访问权限的人删除其任何机密信息或知识产权。

  • 组织所有者可禁用对组织中的特定或任何私有仓库进行分叉的功能。更多信息请参阅“允许人员分叉组织拥有的私有仓库”和“允许人员分叉组织中的私有仓库”。

删除私有仓库

当您删除私有仓库时,其所有私有分叉也将被删除。

删除公共仓库

当您删除公共仓库时,将选择现有的公共分叉之一作为新的父仓库。 所有其他仓库均从这一新的父仓库分叉,并且后续的拉取请求都转到这一新的父仓库。

私有分叉和权限

私有分叉继承上游或父仓库的权限结构。例如,如果上游仓库为私有仓库,并且赋予某个团队读取/写入权限,则该团队将对该私有上游仓库的所有分叉都拥有读取/写入权限。这有助于私有仓库的所有者保持对其代码的控制。

将公共仓库更改为私有仓库

如果将公共仓库设为私有,其公共分叉将拆分到新网络中。 与删除公共仓库一样,选择现有的公共分支之一作为新的父仓库,并且所有其他仓库都从这个新的父仓库中分叉。 后续的拉取请求都转到这一新的父仓库。

换句话说,即使将父仓库设为私有后,公共仓库的分叉也将在其各自的仓库网络中保持公开。 这样分叉所有者便可继续工作和协作,而不会中断。 如果公共分叉没有通过这种方式移动到单独的网络中,则这些分叉的所有者将需要获得适当的访问权限以从(现在私有的)父仓库中拉取更改并提交拉取请求 — 即使它们以前不需要这些权限。

如果公共仓库启用了匿名 Git 读取权限并且该仓库设为私有,则所有仓库的分叉都将失去匿名 Git 读取权限并恢复为默认的禁用设置。 如果将分叉的仓库设为公共,则仓库管理员可以重新启用 Git 读取权限。 更多信息请参阅“为仓库启用匿名 Git 读取权限”。

删除私有仓库

如果将公共仓库设为私有然后删除,其公共分叉将在单独的网络中继续存在。

将私有仓库更改为公共仓库

如果将私有仓库设为公共,则其每个私有分叉都将变为独立的私有仓库并且成为自己新仓库网络的父仓库。 私有分叉绝不会自动设为公共,因为它们可能包含不应公开显示的敏感提交。

删除公共仓库

如果将私有仓库设为公共然后删除,其私有分叉将作为单独网络中的独立私有仓库继续存在。

延伸阅读

问问别人

找不到要找的内容?

联系我们