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

GitLab for Slack 应用

  • 版本:免费版、高级版、旗舰版
  • 提供:GitLab.com、GitLab 自托管、GitLab 专用

本页面包含 GitLab for Slack 应用的用户文档。有关管理员文档,请参阅 GitLab for Slack 应用管理

GitLab for Slack 应用是一个原生的 Slack 应用,可在你的 Slack 工作区提供 斜杠命令通知。GitLab 会将你的 Slack 用户与 GitLab 用户关联,这样你在 Slack 中运行的任何命令都会由关联的 GitLab 用户执行。

安装 GitLab for Slack 应用

前置条件:

在 GitLab 15.0 及更高版本中,GitLab for Slack 应用使用 细粒度权限。尽管功能没有变化,但你应该 重新安装应用

从项目或群组设置安装

要从项目或群组设置安装 GitLab for Slack 应用:

  1. 在左侧边栏,选择 搜索或跳转至 并找到你的项目或群组。
  2. 选择 设置 > 集成
  3. 选择 GitLab for Slack 应用
  4. 选择 安装 GitLab for Slack 应用。你将被重定向到 Slack 确认页面。
  5. 在 Slack 确认页面上:
    1. 可选。如果你登录了多个 Slack 工作区,在右上角, 从下拉列表中选择你想要安装应用的工作区。 在 GitLab 自托管版和 GitLab 专用版中,管理员必须首先 启用对多个工作区的支持 以显示下拉列表。
    2. 选择 允许

从 Slack 应用目录安装

  • 版本:免费版、高级版、旗舰版
  • 提供:GitLab.com

在 GitLab.com 上,你也可以从 Slack 应用目录 安装 GitLab for Slack 应用。

要从 Slack 应用目录安装 GitLab for Slack 应用:

  1. 访问 GitLab for Slack 页面
  2. 选择一个要与你的 Slack 工作区关联的 GitLab 项目。

重新安装 GitLab for Slack 应用

当 GitLab 为 GitLab for Slack 应用发布新功能时,你可能需要重新安装应用才能使用这些功能。

要重新安装 GitLab for Slack 应用:

  1. 在左侧边栏,选择 搜索或跳转至 并找到你的项目。
  2. 选择 设置 > 集成
  3. 选择 GitLab for Slack 应用
  4. 选择 安装 GitLab for Slack 应用。你将被重定向到 Slack 确认页面。
  5. 在 Slack 确认页面上:
    1. 可选。如果你登录了多个 Slack 工作区,在右上角, 从下拉列表中选择你想要重新安装应用的工作区。 在 GitLab 自托管版和 GitLab 专用版中,管理员必须首先 启用对多个工作区的支持 以显示下拉列表。
    2. 选择 允许

使用该集成的所有项目都会更新 GitLab for Slack 应用。

或者,你可以再次 配置集成

斜杠命令

你可以使用斜杠命令来执行常见的 GitLab 操作。

对于 GitLab for Slack 应用:

  • 运行第一个斜杠命令时,你必须授权你的 Slack 用户。
  • 你可以将 <project> 替换为项目完整路径,或者为斜杠命令 创建项目别名

如果你使用 Slack 斜杠命令Mattermost 斜杠命令

  • /gitlab 替换为你为这些集成配置的触发名称。
  • 移除 <project>

以下斜杠命令可用于 GitLab:

命令 描述
/gitlab help 显示所有可用的斜杠命令。
/gitlab <project> issue show <id> 显示 ID 为 <id> 的 issue。
/gitlab <project> issue new <title> Shift+Enter <description> 创建标题为 <title>、描述为 <description> 的 issue。
/gitlab <project> issue search <query> 显示最多五个与 <query> 匹配的 issue。
/gitlab <project> issue move <id> to <project> 将 ID 为 <id> 的 issue 移动到 <project>
/gitlab <project> issue close <id> 关闭 ID 为 <id> 的 issue。
/gitlab <project> issue comment <id> Shift+Enter <comment> 向 ID 为 <id> 的 issue 添加评论内容为 <comment> 的评论。
/gitlab <project> deploy <from> to <to> 部署<from> 环境到 <to> 环境。
/gitlab <project> run <job name> <arguments> 在默认分支上执行 ChatOps 作业 <job name>
/gitlab incident declare 打开对话框,从 Slack 创建事件

deploy 命令

要部署到环境,GitLab 会尝试在流水线中查找手动部署操作。

如果只为环境定义了一个部署操作,则触发该操作。如果定义了多个部署操作,GitLab 会尝试查找与环境名称匹配的操作名称。

如果 GitLab 找不到匹配的部署操作,命令将返回错误。

创建项目别名

在 GitLab for Slack 应用中,斜杠命令默认使用项目完整路径。你可以改用项目别名。

要在 GitLab for Slack 应用中为斜杠命令创建项目别名:

  1. 在左侧边栏,选择 搜索或跳转至 并找到你的项目。
  2. 选择 设置 > 集成
  3. 选择 GitLab for Slack 应用
  4. 在项目路径或别名旁边,选择 编辑
  5. 输入新别名并选择 保存更改

Slack 通知

你可以接收某些 GitLab 事件 的 Slack 通知。

配置通知

要配置 Slack 通知:

  1. 在左侧边栏,选择 搜索或跳转至 并找到你的项目。

  2. 选择 设置 > 集成

  3. 选择 GitLab for Slack 应用

  4. 触发 部分:

    • 选择你希望在 Slack 中接收通知的每个 GitLab 事件 的复选框。

    • 对于你选择的每个复选框,输入你想要接收通知的 Slack 频道名称。 你可以输入最多 10 个用逗号分隔的频道名称(例如,#channel-one, #channel-two)。

      如果 Slack 频道是私有的,你必须 [将 GitLab for Slack 应用添加到频道](#receive-notifications-to-a-private-channel)。
      
  5. 可选。在 通知设置 部分:

    • 选择 仅通知失败的流水线 复选框 以仅接收失败流水线的通知。
    • 要发送通知的分支 下拉列表中, 选择你想要接收通知的分支。漏洞通知 仅由默认分支触发,无论 选择了哪些分支。 有关更多详细信息,请参阅 issue 469373
    • 对于 要通知的标签,输入 GitLab issue、merge request 或评论必须具有的任何或所有标签才能接收通知。 留空以接收所有事件的通知。
  6. 可选。选择 测试设置

  7. 选择 保存更改

接收私有频道的通知

要接收私有 Slack 频道的通知,你必须将 GitLab for Slack 应用添加到频道:

  1. 在频道中通过输入 @GitLab 提及应用。
  2. 选择 添加到频道

通知事件

以下 GitLab 事件可以在 Slack 中触发通知:

事件 描述
Push 推送到仓库。
Issue 创建、关闭或重新打开 issue。
Confidential issue 创建、关闭或重新打开机密 issue。
Merge request 创建、合并、关闭或重新打开 merge request。
Note 添加评论。
Confidential note 在机密 issue 上添加内部注释或评论。
Tag push 标签推送到仓库或被移除。
Pipeline 流水线状态更改。
Wiki page 创建或更新 wiki 页面。
Deployment 开始或完成部署。
公开频道中的 群组提及 在公开频道中提及群组。
私有频道中的 群组提及 在私有频道中提及群组。
事件 创建、关闭或重新打开事件。
漏洞 在默认分支上记录新的、唯一的漏洞。
Alert 记录新的、唯一的警报。

触发群组提及通知

要触发群组提及的 通知事件,在以下内容中使用 @<group_name>

  • Issue 和 merge request 描述
  • 对 issue、merge request 和 commit 的评论