Help us learn about your current experience with the documentation. Take the survey.

管理群组

使用群组可同时管理一个或多个相关项目。

在 GitLab 自托管版中,若需查看整个组织的概览,应创建一个顶级群组。 有关创建所有群组的组织视图的更多信息, 请查看史诗 9266。 顶级群组通过完整的 安全仪表盘与中心漏洞报告合规中心价值流分析 提供整个组织的洞察。

添加群组 README

可添加 README 文件说明团队信息并邀请用户参与项目。 README 显示在群组概览页面,所有群组成员均可查看和编辑。

前提条件:

  • 从群组设置创建 README 时,必须拥有群组的所有者角色。

添加群组 README 的步骤:

  1. 在左侧边栏选择 搜索或跳转至 并找到您的群组。
  2. 选择 设置 > 常规
  3. 群组 README 部分,选择 添加 README。此操作将创建一个包含 README.md 文件的新项目 gitlab-profile
  4. 在创建 README 的提示中,选择 创建并添加 README。系统将重定向到 Web IDE,README 文件在此处创建。
  5. 在 Web IDE 中编辑并提交 README.md 文件。

更改群组所有者

可更改群组的所有者。每个群组必须始终至少拥有一个所有者角色的成员。

  • 作为管理员:
    1. 在左侧边栏选择 搜索或跳转至 并找到您的群组。
    2. 选择 管理 > 成员
    3. 为其他成员分配所有者角色。
    4. 刷新页面,即可移除原始所有者的所有者角色。
  • 作为当前群组的所有者:
    1. 在左侧边栏选择 搜索或跳转至 并找到您的群组。
    2. 选择 管理 > 成员
    3. 为其他成员分配所有者角色。
    4. 让新所有者登录并移除您的所有者角色。

更改群组路径

更改群组路径(群组 URL)可能产生意外副作用。在操作前,请了解重定向在 项目API 中的行为。

若更改路径是为供其他群组或用户使用,必须同时重命名群组。群组名称和路径必须唯一。

为保留原始命名空间所有权并保护 URL 重定向,建议创建新群组并转移项目。

更改群组路径(群组 URL)的步骤:

  1. 在左侧边栏选择 搜索或跳转至 并找到您的群组。
  2. 选择 设置 > 常规
  3. 展开 高级 部分。
  4. 更改群组 URL 下输入新名称。
  5. 选择 更改群组 URL

若命名空间包含带有 容器注册表 标签的项目,则无法重命名命名空间,因为项目无法移动。

为确保包含数千个子群组的群组正确处理路径变更,应在测试环境中测试路径变更。 考虑临时增加 Puma 工作超时时间。 有关缓解此超时风险的解决方案详情,请参阅 问题 432065

更改群组的默认分支保护

GitLab 实例的管理员可为 实例中的所有项目 配置默认分支保护。 该实例中的群组继承全局设置的分支保护。群组所有者可 覆盖实例设置。 在 GitLab Premium 或 Ultimate 中,实例管理员可禁用此权限。

为初始分支使用自定义名称

在 GitLab 中创建新项目时,首次推送会创建默认分支。 群组所有者可 自定义群组项目的初始分支 以满足需求。

转移群组

转移群组是在同一 GitLab 实例内移动群组。您可以:

  • 将子群组转移到新的父群组。
  • 通过将顶级群组转移到目标群组,将其转换为子群组。
  • 通过将子群组移出当前群组,将其转换为顶级群组。

若需将群组复制到其他 GitLab 实例, 通过直接传输迁移群组

转移群组时请注意:

  • 更改群组的父群组可能产生意外副作用。请参阅 仓库路径变更的影响
  • 必须更新本地仓库以指向新位置。
  • 若直接父群组的可见性低于当前群组,子群组和项目的可见性将调整为匹配新父群组。
  • 仅显式群组成员资格会被转移,继承的成员资格不会转移。若群组所有者仅有继承的成员资格,群组将失去所有者。此时,执行转移的用户将成为群组所有者。
  • 若群组是顶级群组且群组任何项目或子群组中存在遵循 命名规范npm 包,转移将失败。
  • 归档项目中的 container_registry 镜像必须在转移前删除。详情请参阅 故障排除部分
  • 使用群组级端点(Maven、NuGet、PyPI、Composer 和 Debian)的现有包需根据包的群组端点设置步骤进行更新。
  • 若包使用实例级端点(MavennpmConan 1)且群组已移动到其他顶级群组,现有包名称必须更新。
  • 在 GitLab.com 上拥有订阅的顶级群组无法转移。为使转移可行,必须先移除顶级群组的订阅,然后可将该顶级群组作为子群组转移到其他顶级群组。

前提条件:

  • 您必须拥有源群组和目标群组的所有者角色。

转移群组的步骤:

  1. 在左侧边栏选择 搜索或跳转至 并找到您的群组。
  2. 选择 设置 > 常规
  3. 展开 高级 部分。
  4. 选择 转移群组
  5. 在下拉菜单中选择目标群组名称。
  6. 选择 转移群组

禁用电子邮件通知

可禁用与群组相关的所有电子邮件通知,包括其子群组和项目。

禁用电子邮件通知的步骤:

  1. 在左侧边栏选择 搜索或跳转至 并找到您的群组。
  2. 选择 设置 > 常规
  3. 展开 权限与群组功能 部分。
  4. 取消勾选 启用电子邮件通知 复选框。

在电子邮件通知中禁用差异预览

当您在合并请求中评论代码时,GitLab 在电子邮件通知中向参与者包含差异的几行内容。 某些组织政策将电子邮件视为安全性较低的系统,或可能无法控制自己的邮件基础设施。这可能对源代码的知识产权或访问控制构成风险。

前提条件:

  • 您必须拥有群组的所有者角色。

为群组中所有项目禁用差异预览:

  1. 在左侧边栏选择 搜索或跳转至 并找到您的群组。
  2. 选择 设置 > 常规
  3. 展开 权限与群组功能
  4. 取消勾选 包含差异预览
  5. 选择 保存更改

群组和项目访问令牌的到期邮件

以下群组和项目成员将收到即将到期的访问令牌的通知邮件:

  • 对于群组访问令牌:
    • 拥有所有者角色的成员。
    • 在 GitLab 17.7 及更高版本中,若群组或其父群组配置了相应设置,继承群组所有者角色的成员。
  • 对于项目访问令牌:
    • 拥有至少维护者角色的项目成员。
    • 在 GitLab 17.7 及更高版本中,若项目属于群组且该群组或其父群组配置了相应设置,继承所有者或维护者角色的项目成员。

您可为群组的继承成员启用通知:

  1. 在左侧边栏选择 搜索或跳转至 并找到您的群组。
  2. 选择 设置 > 常规
  3. 展开 权限与群组功能
  4. 群组和项目访问令牌到期通知邮件应发送给: 下,选择 群组或项目的所有直接和继承成员
  5. 可选:勾选 强制应用于所有子群组 复选框。
  6. 选择 保存更改

更多信息请参阅:

为群组访问令牌到期添加额外的 Webhook 触发器

GitLab 在群组令牌过期前发送多封 到期邮件 并触发相关的 Webhook。默认情况下,GitLab 仅在令牌过期前 7 天触发这些 Webhook。启用此功能后,GitLab 还可在令牌过期前 60 天和 30 天触发这些 Webhook。

为这些 Webhook 启用额外触发器的步骤:

  1. 在左侧边栏选择 搜索或跳转至 并找到您的群组。
  2. 选择 设置 > 常规
  3. 展开 权限与群组功能 部分。
  4. 勾选 为群组访问令牌到期添加额外的 Webhook 触发器 复选框。
  5. 选择 保存更改

禁用群组提及

可防止用户在任何人 提及群组 时被添加到对话中并收到通知。

禁用提及的群组在自动完成下拉列表中会相应可视化显示。

这些视觉提示对于拥有大量用户的群组特别有用。

禁用群组提及的步骤:

  1. 在左侧边栏选择 搜索或跳转至 并找到您的群组。
  2. 选择 设置 > 常规
  3. 展开 权限与群组功能 部分。
  4. 选择 禁用群组提及
  5. 选择 保存更改

阻止群组邀请

您可以移除用户向顶级群组中的子群组或项目邀请新成员的能力。这也会阻止群组所有者发送邀请。您必须先禁用此设置,才能再次邀请用户。

共享迁移 等功能仍可能允许访问这些子群组和项目。

在 GitLab 自托管版和 GitLab Dedicated 实例上,您可以阻止整个实例的用户邀请。更多信息请参阅 阻止群组和项目邀请

前提条件:

  • 您必须拥有群组的所有者角色。

阻止群组邀请的步骤:

  1. 在左侧边栏选择 搜索或跳转至 并找到您的群组。
  2. 选择 设置 > 常规
  3. 展开 权限与群组功能 部分。
  4. 选择 禁用群组/项目成员邀请
  5. 选择 保存更改

将成员导出为 CSV

  • 版本:Premium, Ultimate
  • 提供方式:GitLab.com, GitLab 自托管版, GitLab Dedicated

您可将群组或子群组的成员列表导出为 CSV。

  1. 在左侧边栏选择 搜索或跳转至 并找到您的群组或子群组。
  2. 选择 管理 > 成员
  3. 选择 导出为 CSV
  4. CSV 文件生成后,将作为附件通过电子邮件发送给请求用户。

输出列表包含直接成员和从祖先群组继承的成员。 对于在选定群组中拥有 最小访问权限 的成员,其 最大角色来源 派生自其在子群组中的成员资格。 问题 390358 跟踪讨论群组成员 CSV 导出列表与 UI 成员列表不匹配的问题。

启用受限访问

  • 版本:Premium, Ultimate
  • 提供方式:GitLab.com

使用受限访问可防止超额费用。 超额费用发生在您超出订阅席位数量时,且必须在下一次 季度对账 时支付。

启用受限访问后,当订阅席位已满时,群组无法添加新的付费用户。

若群组启用了 用户上限 且有待审批成员,启用受限访问时所有待审批成员将自动从群组中移除。

前提条件:

  • 您必须拥有群组的所有者角色。
  • 群组或其子群组或项目不得被外部共享。

启用受限访问的步骤:

  1. 在左侧边栏选择 设置 > 常规
  2. 展开 权限与群组功能
  3. 席位控制 下,选择 受限访问

已知问题

启用受限访问时,可能发生以下已知问题并导致超额费用:

  • 在以下情况下席位数量仍可能超出:
    • 使用 SAML 或 SCIM 添加新成员且已超出订阅席位数量。
    • 多个拥有所有者角色的用户同时添加成员。
    • 新付费成员延迟接受邀请。
    • 从使用用户上限切换到受限访问,且在切换前有待审批成员。此时这些成员将保持待审批状态。若在受限访问期间审批待审批成员,可能超出订阅席位数量。
    • 若通过 GitLab 销售团队续订订阅时用户数少于当前订阅,将产生超额费用。为避免此费用,请在续订开始前移除多余用户。例如,若您有 20 个用户但续订 15 个用户,将为多出的 5 个用户支付超额费用。

此外,受限访问可能阻止标准非超额流程:

  • 更新或添加到付费角色的服务机器人被错误阻止。
  • 通过电子邮件邀请或更新现有付费用户被意外阻止。

群组用户上限

  • 版本:Premium, Ultimate
  • 提供方式:GitLab.com

有关 GitLab 自托管版的用户上限信息,请参阅 用户上限

当付费成员数量达到用户上限时,群组所有者必须审批新成员。

启用用户上限功能的群组及其子群组的 群组共享 功能将被禁用。

指定用户上限时,通过群组共享添加的成员将失去群组访问权限。

为群组指定用户上限

前提条件:

  • 您必须被分配群组的所有者角色。

指定用户上限的步骤:

  1. 在左侧边栏选择 搜索或跳转至 并找到您的群组。 您只能为顶级群组设置上限。
  2. 选择 设置 > 常规
  3. 展开 权限与群组功能
  4. 席位控制 下,勾选 设置用户上限 复选框并在字段中输入用户数量。
  5. 选择 保存更改

若群组现有用户数已超过用户上限值,用户不会被移除。但未经审批无法添加更多用户。

增加用户上限不会审批待审批成员。

移除群组用户上限

您可以移除用户上限,从而无限制地向群组添加成员。

前提条件:

  • 您必须被分配群组的所有者角色。

移除用户上限的步骤:

  1. 在左侧边栏选择 搜索或跳转至 并找到您的群组。
  2. 选择 设置 > 常规
  3. 展开 权限与群组功能
  4. 席位控制 下,选择 开放访问
  5. 选择 保存更改

减少用户上限不会审批待审批成员。

审批群组待审批成员

当付费用户数量达到用户上限时,任何新成员将处于待审批状态且必须被审批。

待审批成员不计为付费成员。成员仅在被审批且不再处于待审批状态后才计为付费成员。

前提条件:

  • 您必须被分配群组的所有者角色。

审批因超出用户上限而待审批的成员:

  1. 在左侧边栏选择 搜索或跳转至 并找到您的群组。
  2. 选择 设置 > 使用配额
  3. 席位 选项卡下,在警报旁选择 查看待审批
  4. 对于每个要审批的成员,选择 审批

已知问题

若群组、子群组或项目被外部共享,则无法启用用户上限。若群组、子群组或项目被外部共享,无论其在层级中的位置如何,都将在命名空间层级之外共享。

为确保在群组、子群组或项目被外部共享时用户上限生效,仅限制顶级命名空间的群组共享。顶级命名空间限制允许在同一命名空间内邀请,并防止来自外部共享的新用户(席位)添加。

GitLab.com Ultimate 存在 已知问题:当付费用户超出用户上限时,无法向群组添加访客用户。例如,假设用户上限为 5,有 3 个开发者和 2 个访客。添加 2 个更多开发者后,即使添加的是不消耗付费席位的访客用户,也无法添加更多用户。

群组文件模板

  • 版本:Premium, Ultimate
  • 提供方式:GitLab.com, GitLab 自托管版, GitLab Dedicated

使用群组文件模板为群组中的每个项目共享常用文件类型的模板集。这类似于 实例模板仓库。 所选项目应遵循该页面记录的命名约定。

您只能选择群组内的项目作为模板源。 这包括与群组共享的项目,但 不包括 正在配置的群组的子群组或父群组中的项目。

您可为子群组和直接父群组配置此功能。子群组中的项目可访问该子群组及任何直接父群组的模板。

有关创建问题和合并请求模板的信息,请参阅 描述模板

通过将群组设置为模板源,在群组级别定义项目模板。 更多信息请参阅 群组级项目模板

启用群组文件模板

  • 版本:Premium, Ultimate
  • 提供方式:GitLab.com, GitLab 自托管版, GitLab Dedicated

启用群组文件模板的步骤:

  1. 在左侧边栏选择 搜索或跳转至 并找到您的群组。
  2. 选择 设置 > 常规
  3. 展开 模板 部分。
  4. 选择一个项目作为模板仓库。
  5. 选择 保存更改

群组合并检查设置

  • 版本:Premium, Ultimate
  • 提供方式:GitLab.com, GitLab 自托管版, GitLab Dedicated

群组所有者可在顶级群组上设置合并请求检查,这些检查适用于所有子群组和项目。

若设置被子群组或项目继承,则无法在继承的子群组或项目中更改这些设置。

要求成功流水线才能合并

可配置群组中的所有子项目在合并前要求完整且成功的流水线。

另请参阅 项目级设置

前提条件:

  • 您必须拥有群组的所有者角色。

启用此设置的步骤:

  1. 在左侧边栏选择 搜索或跳转至 并找到您的群组。
  2. 选择 设置 > 常规
  3. 展开 合并请求
  4. 合并检查 下,选择 流水线必须成功。 此设置还会阻止在没有流水线时合并合并请求。
  5. 选择 保存更改

允许跳过流水线后合并

可配置 跳过的流水线 不阻止合并请求合并。

另请参阅 项目级设置

前提条件:

  • 您必须拥有群组的所有者角色。

更改此行为的步骤:

  1. 在左侧边栏选择 搜索或跳转至 并找到您的群组。
  2. 选择 设置 > 常规
  3. 展开 合并请求
  4. 合并检查 下:
    • 选择 流水线必须成功
    • 选择 跳过的流水线视为成功
  5. 选择 保存更改

阻止合并除非所有线程已解决

可阻止合并请求合并,直到所有线程已解决。启用此设置后,群组中的子项目在合并请求上显示开放线程计数(至少有一个开放线程时显示为橙色)。

前提条件:

  • 您必须拥有群组的所有者角色。

启用此设置的步骤:

  1. 在左侧边栏选择 搜索或跳转至 并找到您的群组。
  2. 选择 设置 > 常规
  3. 展开 合并请求
  4. 合并检查 下,选择 所有线程必须已解决
  5. 选择 保存更改

群组合并请求审批设置

  • 版本:Premium, Ultimate
  • 提供方式:GitLab.com, GitLab 自托管版, GitLab Dedicated

群组审批设置管理顶级群组中所有项目的 项目合并请求审批设置。 这些设置 级联到属于该群组的所有项目

查看群组的合并请求审批设置:

  1. 在左侧边栏选择 搜索或跳转至 并找到您的群组。
  2. 选择 设置 > 常规
  3. 展开 合并请求审批 部分。
  4. 选择所需的设置。
  5. 选择 保存更改

审批设置不应与 审批规则 混淆。支持为群组设置合并请求审批规则的能力在 史诗 4367 中跟踪。

群组活动分析

  • 版本:Premium, Ultimate
  • 提供方式:GitLab.com, GitLab 自托管版, GitLab Dedicated

对于群组,您可以查看过去 90 天内创建了多少合并请求、问题和成员。

群组维基 的更改不会显示在群组活动分析中。

查看群组活动

您可以在浏览器或 RSS 源中查看群组中最近执行的操作:

  1. 在左侧边栏选择 搜索或跳转至 并找到您的群组。
  2. 选择 管理 > 活动

要以 Atom 格式查看活动源,选择 RSS ( rss ) 图标。