Slack 的 GitHub 集成允许您将您的 GitHub 帐户连接到 Slack 中的 GitHub 应用。 连接后,可以使用斜杠命令与 GitHubSlack 中的团队交互、接收有关存储库活动的通知,并与团队直接协作。
注意
* GitHub Copilot 在 Slack 中目前处于 公开预览 阶段,后续可能会有所变动。
您还可以通过 GitHub 集成在对话中发起并引导 Copilot cloud agent 会话,包括让 Copilot 在线程内执行深度研究、规划和分流任务。 团队成员可以彼此协作,也可以与智能体协作,添加上下文、纠正假设、继续智能体任务,并审查生成的成果。
将您的 GitHub 帐户连接到 Slack 中的 GitHub 应用
注意
在连接帐户之前,Slack 工作区的管理员必须已安装该 GitHub 应用。 请参阅“将 GitHub 与 Slack 集成”。
- 在 Slack 中,使用 GitHub 应用启动直接消息。
- 私信将预填充欢迎消息和连接 GitHub 帐户的链接。 按照 Slack 屏幕和 GitHub 浏览器中的提示进行身份验证和授权连接。
GitHub帐户连接后,Slack 会显示可用的命令和功能列表。
使用斜线命令与GitHub在 Slack 中进行交互
若要使用斜杠命令,请键入 /github,然后在任一 Slack 通道或 GitHub 应用所在的直接消息的消息输入字段中输入要执行的命令。 若要邀请应用加入频道,请在频道中键入 /invite @github 。
| Command | Description |
|---|---|
/github help | 显示基本命令及其说明的列表。 |
/github subscribe OWNER/REPO | 订阅此渠道以接收指定存储库的通知。 |
/github unsubscribe OWNER/REPO | 取消通道对指定存储库通知的订阅。 |
/github subscribe list | 列出频道订阅的所有存储库。 |
/github open OWNER/REPO | 在指定的存储库中打开问题。 系统将提示你提供问题的标题和说明。 |
/github close [ISSUE-LINK] | 将指定的问题标记为已完成并关闭。 |
/github close [ISSUE-LINK] reason:"NOT-PLANNED" | 关闭指定的问题并给出原因。 将 "NOT-PLANNED" 替换为你的原因。 |
/github reopen [ISSUE-LINK] | 重新打开指定的问题。 |
/github signin | 重新启动“连接您的 GitHub 帐户”工作流。 |
/github signout | 断开 GitHub 帐户与 Slack 用户的连接。 |
注意
当你将渠道订阅到存储库时,该渠道将收到该存储库中有关拉取请求和问题的所有 open、close和reopen 事件的通知。 该通道还将直接接收任何 push 事件的通知,并将这些事件直接发送到存储库的默认分支。
若要更改 Slack 中的设置 Copilot cloud agent ,请使用 @GitHub settings 命令。
Copilot cloud agent在 Slack 中启动会话
GitHub 集成包括 Slack 中的 Copilot cloud agent。 可以在正在进行讨论的线程中调用GitHub Copilot,并要求其根据讨论的上下文进行修改。
在直接消息、线程和通道中使用 Copilot 。 除了创建议题、拉取请求和其他相关对象外,在 Slack 中使用 Copilot 还可以:
- 直接从讨论转向调查和实施。
- 提出问题并调查失败。
- 在实施之前规划工作。
- 与队友协作操控智能体。
- 通过任何设备分派工作。
- 让任务异步运行。
- 在打开状态下查看生成的结果。
- 在 Slack 之外,于 GitHub、终端或你偏好的代码编辑器中继续处理代理生成的产物。
有关详细信息,请参阅“将 Copilot 云代理与 Slack 集成”。
处理议题和拉取请求
您可以直接在 Slack 中创建、评论和管理问题及拉取请求,无论是否使用 Copilot。
若要让 Copilot 执行某项操作,请在任意聊天中输入 @mention@GitHub,然后输入您的任务。
注意
由 Copilot 在共享上下文中创建的拉取请求会使用应用的身份。 如果您使用存储库规则集,由于这些拉取请求不会归属于某个个人,因此在合并前还需要额外一次批准,前提是该存储库本身已要求至少一次批准。 此项已默认启用。 请参阅“规则集的可用规则”。
有关处理独立于 Copilot问题的分步说明和拉取请求,请参阅 通过 Slack 中的 GitHub 集成创建问题 和 在 Slack 中管理 GitHub 集成的相关问题。
Slack 中的通知提及
在 Slack 中订阅存储库时,您将在涉及您的存储库事件通知中看到自己被提及。 例如,如果你被分配到某个问题,或在批注中提及,你将在 Slack 的通知中看到自己被提及。
提及功能需要你通过 Slack 中的 GitHub 应用登录 GitHub 帐户。 这使得GitHub能够将您的 Slack 身份映射到GitHub身份。 请参阅如何在 Slack 中将您的GitHub帐户连接到GitHub应用。
注意
如果您在多个 Slack 工作区中使用 GitHub 应用,则提及仅会在您最近登录 GitHub 应用的工作区中生效。 如果你在其他工作区登录 GitHub 应用,提及功能将在之前的工作区失效。
以下是会提到你的情境:
- 将为你分配一个任务。
- 请求你对拉取请求进行审查。
- 你在拉取请求、问题说明、评论或讨论中被提及。
- 请求你对一项部署进行评审。
- 你会收到一条关于拉取审查请求的定时提醒。
您可以在 Slack 的“提及”视图中查看您 GitHub 的提及摘要。 有关详细信息,请参阅 Slack 文档中 “活动”选项卡中的“会审通知 ”。
若要了解如何在 Slack 中自定义 GitHub 通知,请参阅 在 Slack 中自定义GitHub通知。
线程会话
每个问题或拉取请求的通知都会在 Slack 中被分组到一个线程中。 父消息始终显示问题或拉取请求的最新状态,以及其他元数据,如标题、说明、分配者、审阅者、标签和检查。 线程处理有助于保持对话组织有序,从而更轻松地跟踪与特定问题或拉取请求相关的更新和讨论。 当问题或拉取请求的状态发生更改时,关联的答复将同时在线程和通道中发布,以便通道中的每个人都知道更新。
可以在各个渠道中为问题和拉取请求通知禁用线程功能。
- 在要禁用线程的 Slack 通道中,键入
/github settings。 - 在设置菜单中,在“禁用拉取请求和问题通知的线程处理”选项的右边,单击禁用。
你或通道的任何其他成员都可以按照相同的步骤并单击“设置”菜单中的“ 启用 ”,随时重新启用线程处理。
将评论和评价发布到 Slack 频道
默认情况下,注释和评论只会显示在其相关线程中。 如果希望渠道成员(而不仅仅是问题参与者)看到这些内容,可以使用以下命令选择进行广播:
-
对于评论广播,请使用
/github subscribe OWNER/REPO comments:"CHANNEL" -
若要审查广播,请使用
/github subscribe OWNER/REPO reviews:"CHANNEL"
在 Slack 中展开 GitHub 活动链接
链接预览在 Slack 中共享指向 GitHub 活动的链接时提供额外的上下文信息。 Slack 中为以下 GitHub 活动显示链接预览:
- 拉取请求
- 问题
- 直接关联的注释
- 包含行号的代码 Blob
- 组织、存储库和用户
如果存在以下任一情况,则不会显示链接预览:
- 在 Slack 工作区中禁用链接预览。 请参阅 Slack 文档中的 “共享”链接并设置预览首选项 。
- 在过去 30 分钟内,频道中已共享同一链接。
- 在同一条消息中共享 3 个或多个链接。
- 存储库是专用的,共享链接的用户:
- 尚未将其 GitHub 帐户连接到 Slack 中的 GitHub 应用。
- 不要在出现提示时显示链接预览。
- 该 GitHub 应用不在共享链接的通道中。 请参阅 使用斜杠命令在 Slack 中与 GitHub 进行交互。
安排拉取请求评审的提醒
可以在 Slack 中安排拉取请求评审的提醒。 提醒可通过 GitHub 应用私信直接发送给你,或发送到安装 GitHub 应用的频道。 例如,可以安排在每个工作日上午 10 点通过私信向你发送提醒,包括所有分配给你的未解决的问题。
可以为自己、团队或整个组织设置定时提醒。 有关详细信息,请参见: