{"meta":{"title":"在 Slack 中使用GitHub","intro":"了解如何在 Slack 中使用GitHub来改进协作并简化工作流。","product":"集成","breadcrumbs":[{"href":"/zh/integrations","title":"集成"},{"href":"/zh/integrations/how-tos","title":"How-tos"},{"href":"/zh/integrations/how-tos/slack","title":"Slack"},{"href":"/zh/integrations/how-tos/slack/use-github-in-slack","title":"在 Slack 中使用GitHub"}],"documentType":"article"},"body":"# 在 Slack 中使用GitHub\n\n了解如何在 Slack 中使用GitHub来改进协作并简化工作流。\n\nSlack 的 GitHub 集成允许您将您的 GitHub 帐户连接到 Slack 中的 GitHub 应用。 连接后，可以使用斜杠命令与 GitHubSlack 中的团队交互、接收有关存储库活动的通知，并与团队直接协作。\n\n> \\[!NOTE]\n> \\*\n> GitHub Copilot 在 Slack 中目前处于 公开预览 阶段，后续可能会有所变动。\n\n你还可以使用 GitHub 集成在对话中启动和引导 Copilot cloud agent 会话，包括要求 Copilot 在线程内执行深度研究、规划和分类任务。 团队成员可以彼此协作，也可以与智能体协作，添加上下文、纠正假设、继续智能体任务，并审查生成的成果。\n\n## 将您的 GitHub 帐户连接到 Slack 中的 GitHub 应用\n\n> \\[!NOTE] 在连接帐户之前，Slack 工作区的管理员必须已安装该 GitHub 应用。 请参阅“[将 GitHub 与 Slack 集成](/zh/integrations/how-tos/slack/integrate-github-with-slack)”。\n\n1. 在 Slack 中，使用 GitHub 应用启动直接消息。\n2. 私信将预填充欢迎消息和连接 GitHub 帐户的链接。 按照 Slack 屏幕和 GitHub 浏览器中的提示进行身份验证和授权连接。\n\nGitHub帐户连接后，Slack 会显示可用的命令和功能列表。\n\n## 使用斜线命令与GitHub在 Slack 中进行交互\n\n若要使用斜杠命令，请键入 `/github`，然后在任一 Slack 通道或 GitHub 应用所在的直接消息的消息输入字段中输入要执行的命令。 若要邀请应用加入频道，请在频道中键入 `/invite @github` 。\n\n| Command                                           | Description                              |\n| ------------------------------------------------- | ---------------------------------------- |\n| `/github help`                                    | 显示基本命令及其说明的列表。                           |\n| `/github subscribe OWNER/REPO`                    | 订阅此渠道以接收指定存储库的通知。                        |\n| `/github unsubscribe OWNER/REPO`                  | 取消通道对指定存储库通知的订阅。                         |\n| `/github subscribe list`                          | 列出频道订阅的所有存储库。                            |\n| `/github open OWNER/REPO`                         | 在指定的存储库中打开问题。 系统将提示你提供问题的标题和说明。          |\n| `/github close [ISSUE-LINK]`                      | 将指定的问题标记为已完成并关闭。                         |\n| `/github close [ISSUE-LINK] reason:\"NOT-PLANNED\"` | 关闭指定的问题并给出原因。 将 `\"NOT-PLANNED\"` 替换为你的原因。 |\n| `/github reopen [ISSUE-LINK]`                     | 重新打开指定的问题。                               |\n| `/github signin`                                  | 重新启动“连接您的 GitHub 帐户”工作流。                 |\n| `/github signout`                                 | 断开 GitHub 帐户与 Slack 用户的连接。               |\n\n> \\[!NOTE] 当你将渠道订阅到存储库时，该渠道将收到该存储库中有关拉取请求和问题的所有 `open`、`close`和`reopen` 事件的通知。 该通道还将直接接收任何 `push` 事件的通知，并将这些事件直接发送到存储库的默认分支。\n\n若要更改 Slack 中的设置 Copilot cloud agent ，请使用 `@GitHub settings` 命令。\n\n## Copilot cloud agent在 Slack 中启动会话\n\nGitHub 集成包括 Slack 中的 Copilot cloud agent。 可以在正在进行讨论的线程中调用GitHub Copilot，并要求其根据讨论的上下文进行修改。\n\n在直接消息、线程和通道中使用 Copilot 。 除了创建议题、拉取请求和其他相关对象外，在 Slack 中使用 Copilot 还可以：\n\n* 直接从讨论转向调查和实施。\n* 提出问题并调查失败。\n* 在实施之前规划工作。\n* 与队友协作引导智能体。\n* 通过任何设备分派工作。\n* 让任务异步运行。\n* 在打开状态下查看生成的结果。\n* 在 Slack 之外，于 GitHub、终端或你偏好的代码编辑器中继续处理代理生成的产物。\n\n有关详细信息，请参阅“[将 Copilot 云代理与 Slack 集成](/zh/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-slack)”。\n\n## 处理议题和拉取请求\n\n您可以直接在 Slack 中创建、评论和管理问题及拉取请求，无论是否使用 Copilot。\n\n要让 Copilot 执行操作，请在任何聊天中通过键入 `@GitHub` 后跟你的任务来 @mention 应用。\n\n> \\[!NOTE]\n> 由 Copilot 在共享上下文中创建的拉取请求会使用应用的身份。 如果您使用存储库规则集，由于这些拉取请求不会归属于某个个人，因此在合并前还需要额外一次批准，前提是该存储库本身已要求至少一次批准。 此项已默认启用。 请参阅“[规则集的可用规则](/zh/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/available-rules-for-rulesets#additional-approval-for-unattributed-copilot-pull-requests)”。\n\n有关独立于 Copilot 处理问题和拉取请求的逐步说明，请参阅 [通过 Slack 中的 GitHub 集成创建问题](/zh/integrations/tutorials/slack/create-issues) 和 [在 Slack 中管理 GitHub 集成的相关问题](/zh/integrations/tutorials/slack/manage-issues)。\n\n## Slack 中的通知提及\n\n在 Slack 中订阅存储库时，您将在涉及您的存储库事件通知中看到自己被提及。 例如，如果你被分配到某个问题，或在批注中提及，你将在 Slack 的通知中看到自己被提及。\n\n提及功能需要你通过 Slack 中的 GitHub 应用登录 GitHub 帐户。 这使得GitHub能够将您的 Slack 身份映射到GitHub身份。 请参阅[如何在 Slack 中将您的GitHub帐户连接到GitHub应用](#connecting-your-github-account-to-the-github-app-in-slack)。\n\n> \\[!NOTE]\n> 如果您在多个 Slack 工作区中使用 GitHub 应用，则提及仅会在您最近登录 GitHub 应用的工作区中生效。 如果你在其他工作区登录 GitHub 应用，提及功能将在之前的工作区失效。\n\n以下是会提到你的情境：\n\n* 将为你分配一个任务。\n* 请求你对拉取请求进行审查。\n* 你在拉取请求、问题说明、评论或讨论中被提及。\n* 请求你对一项部署进行评审。\n* 你会收到一条关于拉取审查请求的定时提醒。\n\n您可以在 Slack 的“提及”视图中查看您 GitHub 的提及摘要。 有关详细信息，请参阅 Slack 文档中 [“活动”选项卡中的“会审通知](https://slack.com/help/articles/19693583638803-Triage-notifications-in-the-Activity-tab) ”。\n\n若要了解如何在 Slack 中自定义 GitHub 通知，请参阅 [在 Slack 中自定义GitHub通知](/zh/integrations/how-tos/slack/customize-notifications)。\n\n## 线程会话\n\n每个问题或拉取请求的通知都会在 Slack 中被分组到一个线程中。 父消息始终显示问题或拉取请求的最新状态，以及其他元数据，如标题、说明、分配者、审阅者、标签和检查。 线程处理有助于保持对话组织有序，从而更轻松地跟踪与特定问题或拉取请求相关的更新和讨论。 当问题或拉取请求的状态发生更改时，关联的答复将同时在线程和通道中发布，以便通道中的每个人都知道更新。\n\n可以在各个渠道中为问题和拉取请求通知禁用线程功能。\n\n1. 在要禁用线程的 Slack 通道中，键入 `/github settings`。\n2. 在设置菜单中，在“禁用拉取请求和问题通知的线程处理”选项的右边，单击**禁用**。\n\n你或通道的任何其他成员都可以按照相同的步骤并单击“设置”菜单中的“ **启用** ”，随时重新启用线程处理。\n\n## 将评论和评价发布到 Slack 频道\n\n默认情况下，注释和评论只会显示在其相关线程中。 如果希望渠道成员（而不仅仅是问题参与者）看到这些内容，可以使用以下命令选择进行广播：\n\n* 对于评论广播，请使用 `/github subscribe OWNER/REPO comments:\"CHANNEL\"`\n\n* 若要审查广播，请使用 `/github subscribe OWNER/REPO reviews:\"CHANNEL\"`\n\n## 在 Slack 中展开 GitHub 活动链接\n\n链接预览在 Slack 中共享指向 GitHub 活动的链接时提供额外的上下文信息。 Slack 中为以下 GitHub 活动显示链接预览：\n\n* 拉取请求\n* 问题\n* 直接关联的注释\n* 包含行号的代码 Blob\n* 组织、存储库和用户\n\n如果存在以下任一情况，则不会显示链接预览：\n\n* 在 Slack 工作区中禁用链接预览。 请参阅 Slack 文档中的 [“共享”链接并设置预览首选项](https://slack.com/help/articles/204399343-Share-links-and-set-preview-preferences#turn-off-link-previews-for-specific-sites) 。\n* 在过去 30 分钟内，频道中已共享同一链接。\n* 在同一条消息中共享 3 个或多个链接。\n* 存储库是专用的，共享链接的用户：\n  * 尚未将其 GitHub 帐户连接到 Slack 中的 GitHub 应用。\n  * 不要在出现提示时显示链接预览。\n  * 该 GitHub 应用不在共享链接的通道中。 请参阅 [使用斜杠命令在 Slack 中与 GitHub 进行交互](#using-slash-commands-to-interact-with-github-in-slack)。\n\n## 安排拉取请求评审的提醒\n\n可以在 Slack 中安排拉取请求评审的提醒。 提醒可通过 GitHub 应用私信直接发送给你，或发送到安装 GitHub 应用的频道。 例如，可以安排在每个工作日上午 10 点通过私信向你发送提醒，包括所有分配给你的未解决的问题。\n\n可以为自己、团队或整个组织设置定时提醒。 有关详细信息，请参见:\n\n* [管理您的预定提醒](/zh/subscriptions-and-notifications/how-tos/managing-your-scheduled-reminders)\n* [管理团队的预定提醒](/zh/organizations/organizing-members-into-teams/managing-scheduled-reminders-for-your-team)\n* [管理您组织的定时提醒](/zh/organizations/managing-organization-settings/managing-scheduled-reminders-for-your-organization)"}