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 应用
前置条件:
- 你必须拥有 向 Slack 工作区添加应用的适当权限。
- 在 GitLab 自托管版中,管理员必须 启用集成。
在 GitLab 15.0 及更高版本中,GitLab for Slack 应用使用 细粒度权限。尽管功能没有变化,但你应该 重新安装应用。
从项目或群组设置安装
要从项目或群组设置安装 GitLab for Slack 应用:
- 在左侧边栏,选择 搜索或跳转至 并找到你的项目或群组。
- 选择 设置 > 集成。
- 选择 GitLab for Slack 应用。
- 选择 安装 GitLab for Slack 应用。你将被重定向到 Slack 确认页面。
- 在 Slack 确认页面上:
- 可选。如果你登录了多个 Slack 工作区,在右上角, 从下拉列表中选择你想要安装应用的工作区。 在 GitLab 自托管版和 GitLab 专用版中,管理员必须首先 启用对多个工作区的支持 以显示下拉列表。
- 选择 允许。
从 Slack 应用目录安装
- 版本:免费版、高级版、旗舰版
- 提供:GitLab.com
在 GitLab.com 上,你也可以从 Slack 应用目录 安装 GitLab for Slack 应用。
要从 Slack 应用目录安装 GitLab for Slack 应用:
- 访问 GitLab for Slack 页面。
- 选择一个要与你的 Slack 工作区关联的 GitLab 项目。
重新安装 GitLab for Slack 应用
当 GitLab 为 GitLab for Slack 应用发布新功能时,你可能需要重新安装应用才能使用这些功能。
要重新安装 GitLab for Slack 应用:
- 在左侧边栏,选择 搜索或跳转至 并找到你的项目。
- 选择 设置 > 集成。
- 选择 GitLab for Slack 应用。
- 选择 安装 GitLab for Slack 应用。你将被重定向到 Slack 确认页面。
- 在 Slack 确认页面上:
- 可选。如果你登录了多个 Slack 工作区,在右上角, 从下拉列表中选择你想要重新安装应用的工作区。 在 GitLab 自托管版和 GitLab 专用版中,管理员必须首先 启用对多个工作区的支持 以显示下拉列表。
- 选择 允许。
使用该集成的所有项目都会更新 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 应用中为斜杠命令创建项目别名:
- 在左侧边栏,选择 搜索或跳转至 并找到你的项目。
- 选择 设置 > 集成。
- 选择 GitLab for Slack 应用。
- 在项目路径或别名旁边,选择 编辑。
- 输入新别名并选择 保存更改。
Slack 通知
你可以接收某些 GitLab 事件 的 Slack 通知。
配置通知
要配置 Slack 通知:
-
在左侧边栏,选择 搜索或跳转至 并找到你的项目。
-
选择 设置 > 集成。
-
选择 GitLab for Slack 应用。
-
在 触发 部分:
-
选择你希望在 Slack 中接收通知的每个 GitLab 事件 的复选框。
-
对于你选择的每个复选框,输入你想要接收通知的 Slack 频道名称。 你可以输入最多 10 个用逗号分隔的频道名称(例如,
#channel-one, #channel-two)。如果 Slack 频道是私有的,你必须 [将 GitLab for Slack 应用添加到频道](#receive-notifications-to-a-private-channel)。
-
-
可选。在 通知设置 部分:
- 选择 仅通知失败的流水线 复选框 以仅接收失败流水线的通知。
- 从 要发送通知的分支 下拉列表中, 选择你想要接收通知的分支。漏洞通知 仅由默认分支触发,无论 选择了哪些分支。 有关更多详细信息,请参阅 issue 469373。
- 对于 要通知的标签,输入 GitLab issue、merge request 或评论必须具有的任何或所有标签才能接收通知。 留空以接收所有事件的通知。
-
可选。选择 测试设置。
-
选择 保存更改。
接收私有频道的通知
要接收私有 Slack 频道的通知,你必须将 GitLab for Slack 应用添加到频道:
- 在频道中通过输入
@GitLab提及应用。 - 选择 添加到频道。
通知事件
以下 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 的评论