关于企业中的仓库管理策略
您可以执行策略来控制企业在 GitHub Enterprise Server 上的企业成员如何管理仓库。 您也可以允许组织所有者管理仓库管理策略。 更多信息请参阅“创建和管理仓库 ”和“组织和团队”。
配置新仓库的默认可见性
每次有人在您的企业上创建新仓库时,此人必须选择仓库的可见性。 当您配置企业的默认可见性设置时,需要选择默认可见性。 有关仓库可见性的更多信息,请参阅“关于仓库。”
如果企业所有者不允许成员创建某种类型的仓库,成员将� 法创建此类仓库,即使可见性设置默认为此类型。 更多信息请参阅“设置仓库创建策略”。
-
在 GitHub Enterprise Server 的右上角,单击您的个人资料照片,然后单击 Enterprise settings(Enterprise 设置)。
-
在企业账户侧边� �中,单击 Policies(政策)。
-
在Policies(政策)下,单击 Options(选项)。
-
在“默认仓库可见性”下,使用下拉菜单并选择默认可见性。
警告:如果您在拉取请求或议题评论中添� 了图像附件,则任何人都可以查看匿名图像 URL,� 需身份验证,即使该拉取请求位于私有仓库中或者启用了私有模式。 为防止未经授权而访问� 像,请确保限制从网络访问提供� 像的系统,包括 您的 GitHub Enterprise Server 实例。
执行 默认 仓库权限的策略
在企业帐户拥有的所有组织中,您可以为组织成员设置默认仓库权限级别(� 、读取、写入或管理),或允许所有者在组织级别管理设置。
-
在 GitHub Enterprise Server 的右上角,单击您的个人资料照片,然后单击 Enterprise settings(Enterprise 设置)。
-
在企业账户侧边� �中,单击 Policies(政策)。
-
在“ Policies(政策)”下,单击 Repositories(仓库)。
-
在“默认 权限”下,查看有关更改设置的信息。 (可选)要在更改设置之前,查看企业帐户中所有组织的当前配置,请单击 View your organizations' current configurations(查看组织的当前配置)。
-
在“默认 权限”下,使用下拉菜单并选择策略。
执行仓库创建策略
在企业拥有的所有组织中,您可以允许成员创建仓库、将仓库创建限于组织所有者或允许所有者在组织级别管理设置。 如果允许成员创建仓库,您可以选择成员能否创建公共、私有和内部仓库的任意组合。 有关内部仓库的更多信息,请参阅“创建内部仓库”。
组织所有者始终可以创建任何类型的仓库,而外部协作者永远不能创建任何类型的仓库。 更多信息请参阅“关于仓库”。
-
在 GitHub Enterprise Server 的右上角,单击您的个人资料照片,然后单击 Enterprise settings(Enterprise 设置)。
-
在企业账户侧边� �中,单击 Policies(政策)。
-
在“ Policies(政策)”下,单击 Repositories(仓库)。
-
在“Repository creation”下,检查有关更改设置的信息。 (可选)要在更改设置之前,查看企业帐户中所有组织的当前配置,请单击 View your organizations' current configurations(查看组织的当前配置)。
-
在“Repository creation(仓库创建)”下,选择一个策略。
-
如果您选择 Members can create repositories(成员可创建仓库),请选择一个或多个仓库类型。
实施有关复刻私有或内部仓库的策略
在企业拥有的所有组织中,您可以允许有权访问私有或内部仓库的人员复刻仓库、永远不允许分支私有或内部仓库,或者允许所有者在组织级别管理设置。
-
在 GitHub Enterprise Server 的右上角,单击您的个人资料照片,然后单击 Enterprise settings(Enterprise 设置)。
-
在企业账户侧边� �中,单击 Policies(政策)。
-
在“ Policies(政策)”下,单击 Repositories(仓库)。
-
在“Repository forking”(仓库复刻)下,审查有关更改设置的信息。 (可选)要在更改设置之前,查看企业帐户中所有组织的当前配置,请单击 View your organizations' current configurations(查看组织的当前配置)。
-
在“Repository forking(仓库复刻)”下,使用下拉菜单并选择策略。
执行邀请 协作者参与仓库的策略
在企业拥有的所有组织中,您可以允许成员邀请 协作者访问存储库,限制邀请组织所有者,或允许组织所有者在组织级别管理设置。
-
在 GitHub Enterprise Server 的右上角,单击您的个人资料照片,然后单击 Enterprise settings(Enterprise 设置)。
-
在企业账户侧边� �中,单击 Policies(政策)。
-
在“ Policies(政策)”下,单击 Repositories(仓库)。
-
在“仓库 邀请”下,请查看有关更改设置的信息。 (可选)要在更改设置之前,查看企业帐户中所有组织的当前配置,请单击 View your organizations' current configurations(查看组织的当前配置)。
-
在“仓库 邀请”下,使用下拉菜单并选择策略。
对默认分支名称实施策略
在企业拥有的所有组织中,您可以为成员创建的任何新仓库设置默认分支名称。 您可以选择在所有组织中强制实施默认分支名称,或允许个别组织设置不同的名称。
-
在 GitHub Enterprise Server 的右上角,单击您的个人资料照片,然后单击 Enterprise settings(Enterprise 设置)。
-
在企业账户侧边� �中,单击 Policies(政策)。
-
在 Repository policies(仓库策略)选项卡的“Default branch name(默认分支名称)”下,输入新仓库应使用的默认分支名称。
-
(可选)要对企业中的所有组织强制实施默认分支名称,请选择 Enforce across this enterprise(在整个企业中实施)。
-
单击 Update(更新)。
执行更改仓库可见性的策略
在您的企业拥有的所有组织中,您可以允许具有管理员权限的成员更改仓库的可见性、将仓库可见性更改限制为组织所有者或允许所有者在组织级别管理设置。 当您阻止成员更改仓库可见性时,只有企业所有者可以更改仓库的可见性。
如果企业所有者仅允许组织所有者创建仓库,则成员将� 法更改仓库可见性。 如果企业所有者只允许私有仓库成员创建私有仓库,则成员只能将仓库的可见性更改为私有。 更多信息请参阅“设置仓库创建策略”。
-
在 GitHub Enterprise Server 的右上角,单击您的个人资料照片,然后单击 Enterprise settings(Enterprise 设置)。
-
在企业账户侧边� �中,单击 Policies(政策)。
-
在“ Policies(政策)”下,单击 Repositories(仓库)。
-
在“Repository visibility change”下,检查有关更改设置的信息。 (可选)要在更改设置之前,查看企业帐户中所有组织的当前配置,请单击 View your organizations' current configurations(查看组织的当前配置)。
-
在“Repository visibility change(仓库可见性更改)”下,使用下拉菜单选择策略。
执行仓库� 除和转移的策略
在您的企业拥有的所有组织中,您可以允许具有管理员权限的成员� 除或转让仓库、将仓库� 除和转让限制为组织所有者或允许所有者在组织级别管理设置。
-
在 GitHub Enterprise Server 的右上角,单击您的个人资料照片,然后单击 Enterprise settings(Enterprise 设置)。
-
在企业账户侧边� �中,单击 Policies(政策)。
-
在“ Policies(政策)”下,单击 Repositories(仓库)。
-
在“Repository deletion and transfer”下,检查有关更改设置的信息。 (可选)要在更改设置之前,查看企业帐户中所有组织的当前配置,请单击 View your organizations' current configurations(查看组织的当前配置)。
-
在“Repository deletion and transfer(仓库� 除和转让)”下,使用下拉菜单选择策略。
执行� 除议题的策略
在您的企业拥有的所有组织中,您可以允许具有管理员权限的成员� 除仓库中的议题、将议题� 除限制为组织所有者或允许所有者在组织级别管理设置。
-
在 GitHub Enterprise Server 的右上角,单击您的个人资料照片,然后单击 Enterprise settings(Enterprise 设置)。
-
在企业账户侧边� �中,单击 Policies(政策)。
-
在 Repository policies(仓库策略)选项卡中的“Repository issue deletion(仓库议题� 除)”下,审查有关更改设置的信息。 (可选)要在更改设置之前,查看企业帐户中所有组织的当前配置,请单击 View your organizations' current configurations(查看组织的当前配置)。
-
在“Repository issue deletion(仓库议题� 除)”下,使用下拉菜单并选择策略。
执行 Git 推送限制策略
要使仓库大小保持可管理并防止发生性能问题,可以为企业中的仓库配置文件大小限制。
默认情况下,强制执行仓库上� 限制时,� 法添� 或上� 超过 100 MB 的文件。
-
在 GitHub Enterprise Server 的右上角,单击您的个人资料照片,然后单击 Enterprise settings(Enterprise 设置)。
-
在企业账户侧边� �中,单击 Policies(政策)。
-
在Policies(政策)下,单击 Options(选项)。
-
在“Repository upload limit”下,使用下拉菜单,然后单击最大对象大小。
-
(可选)要对企业中的所有仓库实施最大上� 限制,请选择 Enforce on all repositories(对所有仓库强制执行)
为仓库之间的拉取请求配置合并冲突编辑器
要求用户在其计算机上本地解决合并冲突可以避免用户� 疏忽而从分叉写入到上游仓库。
-
在 GitHub Enterprise Server 的右上角,单击您的个人资料照片,然后单击 Enterprise settings(Enterprise 设置)。
-
在企业账户侧边� �中,单击 Policies(政策)。
-
在Policies(政策)下,单击 Options(选项)。
-
在“Conflict editor for pull requests between repositories”下,使用下拉菜单,然后单击 Disabled。
配置强制推送
每个仓库从拥有该仓库的用户帐户或组织的设置继承默认强制推送设置。 每个组织和用户帐户都会从企业的强制推送设置继承默认强制推送设置。 如果您更改企业的强制推送设置,此策略适用于任何用户或组织拥有的所有仓库。
阻止强制推送到所有仓库
-
在 GitHub Enterprise Server 的右上角,单击您的个人资料照片,然后单击 Enterprise settings(Enterprise 设置)。
-
在企业账户侧边� �中,单击 Policies(政策)。
-
在Policies(政策)下,单击 Options(选项)。
-
在“Force pushes(强制推送)”下,使用下拉菜单,然后单击 Allow(允许)、Block(阻止)或 Block to the default branch(阻止到默认分支)。
-
可以视情况选择 Enforce on all repositories,这将覆盖强制推送的组织和仓库级别设置。
阻止特定仓库的强制推送
注意: 每个仓库自动从拥有它的组织或用户继承默认设置。 如果仓库所有者已在其所有仓库上强制执行设置,则您不能覆盖默认设置。
-
登录到
http(s)://HOSTNAME/login
上的 您的 GitHub Enterprise Server 实例。 -
从 GitHub Enterprise Server 上的管理帐户中,在任何页面的右上角,单击 。
-
如果您尚未进入“站点管理员”页面,请在左上角单击 Site admin(站点管理员)。
-
在搜索字段中,输入仓库的名称,然后单击 Search(搜索)。
-
在搜索结果中,单击仓库名称。
-
在页面的右上角,单击 Admin(管理员)。
-
在左侧边� �中,单击 Admin(管理员)。
-
在 Push and Pull(推送和拉取)下,选择 Block(阻止)或 Block to the default branch(阻止到默认分支)。
阻止对用户帐户或组织拥有的仓库进行强制推送
仓库从它们所属的用户帐户或组织继承强制推送设置。 反过来,用户帐户和组织从企业的强制推送设置继承其强制推送设置。
您可以通过配置用户帐户或组织的设置来覆盖默认的继承设置。
-
登录到
http(s)://HOSTNAME/login
上的 您的 GitHub Enterprise Server 实例。 -
从 GitHub Enterprise Server 上的管理帐户中,在任何页面的右上角,单击 。
-
如果您尚未进入“站点管理员”页面,请在左上角单击 Site admin(站点管理员)。
-
在搜索字段中,输入用户或组织的名称,然后单击 Search(搜索)。
-
在搜索结果中,单击用户或组织的名称。
-
在页面的右上角,单击 Admin(管理员)。
-
在左侧边� �中,单击 Admin(管理员)。
-
在“Force pushes”部分的“Repository default settings”下,选择
- Block 来阻止对所有分支进行强制推送。
- Block to the default branch 来仅阻止对默认分支进行强制推送。
-
可以视情况选择 Enforce on all repositories 来覆盖仓库特定的设置。 注意,这不会覆盖企业范围的策略。
配置匿名 Git 读取访问
注:如果启用匿名 Git 读取访问,您将对此功能的所有访问和使用负责。 GitHub 对功能的任何非预期访问或误用概不负责。 此外,使用此功能不得违反 GitHub 的许可,包括您向我们订购的用户许可数的限制。
如果您已经在企业上启用私密模式,可以允许仓库管理员启用对公共仓库的匿名 Git 读取访问。
启用匿名 Git 读取允许用户在企业上为自定义工具绕过身份验证。 当您或仓库管理员为仓库启用此权限设置时,未经过身份验证的 Git 操作(和具有 GitHub Enterprise Server 的网络访问权限的任何人)将获得仓库的读取权限(� 需身份验证)。
如有必要,您可以通过锁定仓库的访问设置,阻止仓库管理员更改企业上仓库的匿名 Git 访问设置。 在您锁定仓库的 Git 读取权限设置后,只有站点管理员可以更改设置。
要查看启用了匿名 Git 读取权限的仓库,请在站点管理仪表板中过滤仓库列表。
注意:
- 不能更改复刻仓库的 Git 读取访问设置,� 为它们的访问设置默认继承自� �仓库。
- 如果公共仓库变成私人,则匿名 Git 读取访问权限将对该仓库及其复刻自动禁用。
- 如果使用匿名身份验证的仓库包含 Git LFS 资产,它将� 法下载 Git LFS 资产,� 为它们仍然需要身份验证。 强烈建议不要对包含 Git LFS 资产的仓库启用匿名 Git 读取访问。
设置所有仓库的匿名 Git 读取访问
-
在 GitHub Enterprise Server 的右上角,单击您的个人资料照片,然后单击 Enterprise settings(Enterprise 设置)。
-
在企业账户侧边� �中,单击 Policies(政策)。
-
在Policies(政策)下,单击 Options(选项)。
-
在“Anonymous Git read access”下,使用下列菜单并单击 Enabled。
-
或者,如果要阻止仓库管理员为企业上的所有仓库更改匿名 Git 读取权限设置,请选择 Prevent repository admins from changing anonymous Git read access。
设置特定仓库的匿名 Git 读取访问
-
从 GitHub Enterprise Server 上的管理帐户中,在任何页面的右上角,单击 。
-
如果您尚未进入“站点管理员”页面,请在左上角单击 Site admin(站点管理员)。
-
在搜索字段中,输入仓库的名称,然后单击 Search(搜索)。
-
在搜索结果中,单击仓库名称。
-
在页面的右上角,单击 Admin(管理员)。
-
在左侧边� �中,单击 Admin(管理员)。
-
在“Danger Zone”下的“Enable Anonymous Git read access”旁,请单击 Enable。
-
审查更改。 要确认,请单击 Yes, enable anonymous Git read access(是,启用匿名 Git 读取权限)。
-
或者,如果要阻止仓库管理员为此仓库更改设置,请选择 Prevent repository admins from changing anonymous Git read access。