Skip to main content

限制 codespace 的保持期

可以为组织拥有的任何 codespace 设置最大保持期。

谁可以使用此功能?

To manage retention constraints for an organization's codespaces, you must be an owner of the organization.

使用 GitHub Team 和 GitHub Enterprise 计划的组织可以为成员和协作者对 GitHub Codespaces 的使用付费。 然后,这些组织可以访问设置和策略来管理由组织支付的 codespace。 有关详细信息,请参阅“选择谁拥有组织中的 codespace 并为其付费”和“GitHub 的计划”。

概述

GitHub Codespaces 在停止后自动删除,并在定义的天数内保持非活动状态。 创建 codespace 时,将设置每个 codespace 的保持期且不会更改。 默认保留期为 30 天。

GitHub 用户可为自己创建的 codespace 设置低于 30 天的个人保持期。 有关详细信息,请参阅“配置 codespace 的自动删除”。

作为组织所有者,你可能希望为针对组织拥有的存储库创建的 codespace 的最大保持期配置约束。 这有助于限制与停止的 codespace 相关联的存储成本,然后在它们自动删除之前保持未使用状态。 有关存储费用的详细信息,请参阅“关于 GitHub Codespaces 的计费”。 可以为组织拥有的所有或特定存储库设置最大保持期。

注意:为存储库设置最大保留策略可防止用户使 codespace 免于自动删除。 对于为该存储库创建的 codespace,“保留 codespace”选项将不可用。 有关详细信息,请参阅“配置 codespace 的自动删除”。

设置组织范围和存储库特定的策略

创建策略时,你可以选择是将其应用于组织中的所有存储库,还是仅应用于指定的存储库。 如果使用 codespace 保留约束创建组织范围的策略,则针对特定存储库的任何策略中的保留约束应小于为整个组织配置的限制,否则它们将不起作用。 在组织范围的策略、针对指定存储库的策略或某人个人设置中默认保持期中,将应用最短保持期。

如果添加具有保留约束的组织范围的策略,则应将保持期设置为最长可接受的期限。 然后,可以添加单独的策略,将组织内特定存储库的最大保持期设置为较短的期限。

注意:Codespace 策略仅适用于组织支付的 codespace。**** 如果某人为组织中的存储库创建 codespace,并自行付费,则 codespace 不受这些策略的约束。 有关详细信息,请参阅“选择谁拥有组织中的 codespace 并为其付费”。

添加策略来设置最大 codespace 保持期

  1. 在 GitHub.com 的右上角,选择个人资料照片,然后单击 “你的组织”****。

    @octocat 的个人资料图片下的下拉菜单的屏幕截图。 “你的组织”以深橙色标出。

  2. 在组织旁边,单击“设置”。

  3. 在边栏的“代码、规划和自动化”部分中,选择“ Codespaces”,然后单击“策略” 。

  4. 在“codespace 策略”页上,单击“创建策略”。****

  5. 输入新策略的名称。

  6. 单击“添加约束”并选择“保持期”。

  7. 单击 编辑约束。

  8. 输入在自动删除 codespace 之前可以保持停止的最大天数,然后单击“保存”。

    下拉列表的屏幕截图,其中标记为“最大值”的字段设置为 8 天。 下面是“取消”和“保存”按钮。

    说明

    • 在此上下文中,一天指的是 24 小时时段,从 codespace 当天停止的时间开始。
    • 有效范围是 0 到 30 天。
    • 将期限设置为 0 将导致 codespace 在停止时或由于不活动而超时时被立即删除。
  9. 默认情况下,策略设置为应用于所有存储库,如果你希望它仅应用于组织中的某些存储库,请单击“所有存储库”,然后在下拉菜单中单击“所选存储库”。

    存储库选择下拉列表的屏幕截图,其中显示了“所有存储库”和“所选存储库”选项。

    注意:**** 如果现有的策略已包含“每用户最大 Codespace 数量”约束,要向该策略添加约束,则无法将该策略应用于所选存储库。 这是因为“每个用户的最大 codespace 数量”约束始终应用于组织中的所有存储库。

    选中“所选存储库”后:

    1. 单击

      标有“所选存储库”的按钮左侧的“设置”图标的屏幕截图(齿轮符号)。

    2. 选择要应用此策略的存储库。

    3. 在存储库列表的底部,单击“选择存储库”。

      存储库列表的屏幕截图,每个存储库都有一个复选框。 已选择三个存储库。

  10. 如果要向策略添加另一个约束,请单击“添加约束”并选择另一个约束。 有关其他约束的信息,请参阅:

  11. 向策略添加完约束后,单击“保存”。

策略将应用于对组织计费的所有新 codespace。 保持期约束仅在创建 codespace 时应用。

编辑策略

可以编辑现有策略。 例如,你可能想要在策略中添加或移除约束。

保持期约束仅在创建 codespace 时应用于它们。 编辑策略不会影响现有 codespace。

  1. 显示“Codespace policies(代码空间策略)”页。 有关详细信息,请参阅“添加策略以设置最大 codespace 保持期”。
  2. 单击要编辑的策略的名称。
  3. 在“保持期”约束旁,单击“”。
  4. 执行所需更改,然后单击“保存”。

删除策略

可以随时删除策略。 删除策略不会影响现有 codespace。

  1. 显示“Codespace policies(代码空间策略)”页。 有关详细信息,请参阅“添加策略以设置最大 codespace 保持期”。

  2. 单击要删除的策略右侧的删除按钮。

  3. 在要删除的策略的右侧,单击“”。

    策略的屏幕截图,其中“删除”按钮(垃圾桶图标)以深橙色边框突出显示。