概述
如果您是 GitHub Team 或 GitHub Enterprise Cloud 计划中组织的所有者,您可以为您的成员和协作者使用 GitHub Codespaces 付费。支付使用费用将允许人们使用 GitHub Codespaces 在您的存储库中工作,而无需自行承担费用,并将使您的组织能够更好地控制从您的存储库创建的 Codespaces。
要支付使用费用,您必须执行以下所有操作
- 允许您的组织的私有仓库中至少部分成员和合作者使用 GitHub Codespaces。有关更多信息,请参阅“为您的组织启用或禁用 GitHub Codespaces”。
- 选择从您的组织的仓库创建的 codespace 为 **组织所有**。有关更多信息,请参阅“选择谁拥有和支付 codespace”。
- 为 GitHub Codespaces 设置一个非零的支出限额。有关更多信息,请参阅“管理 GitHub Codespaces 的支出限额”。
关于选择谁支付 codespace
支付 codespace 意味着支付 codespace 在其生命周期内的存储和计算成本。有关更多信息,请参阅“关于 GitHub Codespaces 的计费”。
使用 GitHub 免费计划的组织无法支付 GitHub Codespaces,因此创建 codespace 的用户始终支付。
对于使用 GitHub Team 或 GitHub Enterprise Cloud 计划的组织,当用户从组织中的仓库创建 codespace 时,用户或组织都可以支付 codespace。创建 codespace 的用户无法选择谁支付,但组织可以选择为某些用户支付。在组织的设置中,您可以选择 codespace 为 **用户所有** 或 **组织所有**。
如果组织选择 codespace 为 **用户所有**,则从组织中的仓库创建 codespace 的用户始终支付 codespace。用户创建 codespace 的权限取决于仓库的可见性和您的组织的访问设置。
如果组织选择 codespace 为 **组织所有**,则如果以下所有条件都满足,组织将支付 codespace
- 组织已为 GitHub Codespaces 设置了非零的支出限额。
- codespace 是从组织的仓库创建的,或从组织的仓库的 fork 创建的。这包括公共和私有仓库。
- 创建 codespace 的用户是组织的成员或合作者,并且组织已为该用户启用了 GitHub Codespaces。如果组织已选择为所有用户启用 Codespaces,则这可能包括所有成员和合作者。如果未为用户启用 Codespaces,他们仍然可以从组织中的公共仓库创建 codespace,但用户将支付这些 codespace。
有关为成员和合作者启用 GitHub Codespaces 的更多信息,请参阅“为您的组织启用或禁用 GitHub Codespaces”。
关于 codespace 的所有权
codespace 由拥有它的帐户支付。codespace 所有者可以是创建 codespace 的用户,也可以是组织。
如果您的组织拥有一个代码空间,您的组织将控制该代码空间。例如,对于您的组织拥有的代码空间,您可以
- 使用 REST API 管理代码空间,例如停止或删除代码空间
- 访问审计日志以查看与 GitHub Codespaces 相关的操作
- 设置策略以管理约束,例如限制代码空间中可使用的开发容器映像或机器类型,或设置默认超时和保留期
如果用户拥有代码空间,即使该代码空间是从您的组织的某个存储库创建的,您的组织也无法管理该代码空间。
当用户创建代码空间时,他们会被告知谁将为其付费,因此谁拥有它。从用户的角度来看,除了您的组织可以用来设置代码空间约束的策略之外,GitHub Codespaces 的体验将类似,无论谁拥有代码空间。例如,用户大多数与 GitHub Codespaces 相关的个人设置,例如点文件、秘密和 GPG 验证,都适用于无论谁拥有代码空间。
关于更改您的设置
当您更改您的所有权设置时,现有的代码空间可以转移到新的所有者。
如果您从 **组织所有权** 更改为 **用户所有权**,当前由您的组织拥有的代码空间将转移到创建该代码空间的用户的拥有权。在您进行此更改之前,您应该要求每个用户查看将转移到其所有权的代码空间。这些代码空间现在将在用户的个人帐户上产生使用费用。
如果您从 **用户所有权** 更改为 **组织所有权**,现有的代码空间可能会转移到您的组织的所有权。如果当前拥有代码空间的用户是成员或协作者,并且您已为该用户启用了 GitHub Codespaces,则代码空间将被转移。否则,代码空间将保留在用户的拥有权下。
选择谁拥有和支付代码空间
注意:如果您无法访问将代码空间设为 **组织所有** 的选项,这可能是因为您已为组织的所有私有存储库中的所有用户禁用了 GitHub Codespaces。有关更多信息,请参阅“关于选择谁支付代码空间”。
-
在 GitHub 的右上角,选择您的个人资料照片,然后单击 您的组织.
-
在组织旁边,点击**设置**。
-
在左侧边栏中,点击** Codespaces**。
-
在左侧边栏中,点击** Codespaces** 下的左侧边栏中,点击**常规**。
-
在 Codespaces 设置页面,在“Codespace 所有权”下,选择您希望为您的组织设置的设置
- **组织所有权**: Codespaces 可以由您的组织拥有和支付。
- **用户所有权**: Codespaces 始终由创建 Codespace 的用户拥有和支付。
-
可选地,在“Codespaces 访问”下,查看您已为其启用 Codespaces 的成员和合作者。这些是唯一可以创建您的组织付费的 Codespaces 的用户。有关更多信息,请参阅“为您的组织启用或禁用 GitHub Codespaces”。
设置支出限额
**注意**: 您必须在您的个人、组织或企业帐户上设置一个非零支出限额,然后才能对帐户使用 GitHub Codespaces 进行计费。
默认情况下,所有帐户的 GitHub Codespaces 支出限额为 0 美元。这将阻止创建新的 Codespaces 或打开现有的 Codespaces,因为这样做会给您的个人帐户、组织帐户或企业帐户带来可计费的成本。对于个人帐户,如果您有权创建 Codespaces,则只要帐户未达到每月包含使用量的限制,您就可以创建 Codespaces。对于组织和企业,默认支出限额意味着,为了允许人们创建向组织或其父级企业计费的 Codespaces,必须将限额更改为高于 0 美元的值。
有关管理和更改帐户支出限额的信息,请参阅“管理 GitHub Codespaces 支出限额”。