安装用于GitHub的 Azure Boards 应用

Azure DevOps 服务 |Azure DevOps Server |Azure DevOps Server 2022

在本快速入门中,你将安装用于GitHub的 Azure Boards 应用,以便将Azure Boards连接到GitHub存储库。 将 Azure Boards 项目与 GitHub.com 存储库连接时,可以将 GitHub 提交和拉取请求与工作项关联。 可以使用GitHub进行软件开发,同时使用Azure Boards来规划和跟踪工作。 在您的GitHub帐户或组织中安装Azure Boards应用程序用于GitHub后,从您的项目中选择要连接的GitHub存储库。

有关 GitHub Azure Boards 应用支持的集成概述,请参阅 Azure Boards-GitHub 集成。

Prerequisites

权限类别 Requirements
Azure DevOps - 项目集合管理员 组的成员。 如果创建了项目,则具有此权限。
- Azure Boards 项目中的项目成员。
GitHub - 安装 Azure Boards 应用的 GitHub 组织的管理员或所有者
- GitHub存储库的读取权限

Important

  • 如果存储库已使用其他身份验证类型(如 OAuth)进行连接,则必须在使用 GitHub 应用重新连接之前从现有连接中删除该存储库。 在配置GitHub应用之前,请遵循本文后面的 add 或删除GitHub存储库中提供的步骤。
  • 如果你是这些存储库的管理员,可以将Azure DevOps组织连接到多个GitHub存储库。 不应将GitHub存储库连接到多个Azure DevOps组织。

安装和配置Azure Boards应用

以下步骤显示了典型的安装序列。 按照屏幕上的任何提示完成设置。

  1. 转到 GitHub Marketplace 中的Azure Boards应用。

  2. 在 “计划和定价”下,在 “免费”下,选择“ 安装”。

  3. 在安装并授权 Azure Boards中,选择要连接到 Azure Boards 的存储库,然后选择安装并授权。

    此示例使用 所有存储库:

    屏幕截图显示了“安装和授权”页,其中选择了所有存储库。

  4. 选择要连接到 GitHub.com 的Azure DevOps组织和Azure Boards项目。

    截图显示 Azure Boards 项目设置页面,其中选择组织和项目。

    一次只能连接一个项目。 如果要连接其他项目,请参阅 “配置其他项目或存储库”。

授予 Azure Boards 组织的访问权限

若要授予GitHub对 Azure DevOps 组织的访问权限,请完成以下步骤。

  1. 在 GitHub Web 门户中,从配置文件菜单中打开 Settings。

    屏幕截图显示了个人资料中的设置选项。

  2. 在集成下选择应用程序。

  3. 选择 Authorized GitHub Apps>Azure Boards。

    截图显示的是突出显示Azure Boards的已授权GitHub应用。

  4. 在组织访问权限下,解决可能出现的所有问题。 选择“授予”,向任何显示为具有“挂起的访问请求”的组织授予访问权限。

    屏幕截图显示了具有访问权限与不具访问权限的组织。

检查第三方应用程序访问策略

确保 GitHub 组织允许 Azure Boards 应用访问第三方应用程序。 如果第三方访问受到限制,则从Azure DevOps添加存储库可能会显示空列表或生成错误。

启用访问权限:

  1. 在GitHub中,打开组织并转到“设置>OAuth 应用策略”。

  2. 单独批准 Azure Boards 应用程序(推荐),或取消对所有第三方应用程序的限制。

    屏幕截图显示了第三方应用程序访问策略。

注释

你必须是组织所有者或管理员才能更改此设置。

在配置好 Azure Boards-GitHub 集成后,您可以将工作项与 GitHub 拉取请求和提交相关联。

以下示例通过创建工作项并将其链接到拉取请求来演示集成:

  1. 在开发板上,选择“ 新建工作项 ”以创建工作项。 在此示例中,请使用标题“向 README 添加徽章”。 工作项类型取决于你的流程:问题(基本)、用户故事(敏捷)或产品积压工作项(Scrum)。

    新的工作项会显示在你的看板上。

  2. 打开工作项并转到 “开发 ”部分。

  3. 选择“添加链接”,然后从“链接类型”菜单中选择GitHub拉取请求。

  4. 选择存储库并输入拉取请求 ID。 还可以添加可选注释。

  5. 选择 “添加链接 ”以创建连接。

    Azure Boards在后台自动执行以下操作:

    • 将徽章添加到已连接的 GitHub 仓库列表中第一个仓库的 README 文件中
    • 为徽章更新创建 GitHub 提交
    • 创建 GitHub 拉取请求以合并对自述文件所做的更改
    • 将GitHub提交和拉取请求链接到工作项
  6. 在工作项中,选择拉取请求链接以在GitHub中将其打开。

  7. 在GitHub中选择“合并拉取请求”。

  8. 在你的 GitHub 仓库中,打开 README 文件以确认徽章已添加。 有关详细信息,请参阅配置要添加到 GitHub README 文件中的状态徽章。

配置其他项目或存储库

可以配置其他Azure Boards/Azure DevOps项目、GitHub.com 存储库或更改Azure Boards应用页中的当前配置。 有关详细信息,请参阅 添加或删除存储库,或者从 Azure Boards。

添加或删除存储库,或者从Azure Boards中删除连接

如果连接出现问题,请删除该连接,并使用新连接重新开始。

  1. 在Azure DevOps中的project中,选择Project设置>GitHub连接。

  2. 若要添加或删除存储库,请选择连接的更多操作省略号,然后从菜单中选择添加存储库或删除存储库。

    截图显示 GitHub 连接菜单的更多选项。

  3. 若要删除所有存储库和连接,请选择删除连接选项。 然后,选择删除进行确认。

    截图显示确认删除了 GitHub 连接。

更改存储库访问

  1. 在 GitHub Web 门户中,从配置文件菜单中打开 Settings。

  2. 选择 集成>应用程序。 在已安装的 GitHub 应用下,选择配置。

    截图显示已安装的 GitHub 应用程序和 Azure Boards 以及“配置”选项。

    此时会打开Azure Boards配置页。

  3. 向下滚动到存储库访问权限部分。

  4. 选择所需选项所有存储库或仅选择存储库。

    如果选择 仅选择存储库,请选择要与 Azure Boards 集成的存储库。

    屏幕截图显示了存储库访问权限,可在其中选择所选存储库。

  5. 选择“保存”。

暂停或卸载 Azure Boards 集成

  1. 从上一过程中的步骤 2 开始,向下滚动到危险区域部分。

    屏幕截图显示了“危险区域”部分,其中包含用于暂停和卸载的选项。

  2. 若要暂停集成,请选择“暂停”。 在确认窗口中,选择“确定”以确认挂起操作。

    屏幕截图显示了“暂停确认”对话框。

    若要取消暂停集成,请选择 “未暂停”。

  3. 若要卸载Azure Boards应用,请选择“卸载”,然后从弹出窗口中选择“确定”。

    屏幕截图显示了“卸载确认”对话框。

更新 Azure Boards-GitHub 连接

如果更改GitHub Azure Boards应用支持的存储库,可能会重定向到Azure Boards GitHub连接。 最好的做法是删除Azure Boards中无法再连接到GitHub的存储库。 有关详细信息,请参阅 添加或删除GitHub存储库。

如果卸载 GitHub Azure Boards 应用,则以下消息显示在 Azure Boards、Project 设置>GitHub 连接中。 选择“删除连接”以删除以前创建的所有GitHub连接。 有关详细信息,请参阅 添加或删除GitHub存储库。

Screenshot 显示未安装的 Azure Boards GitHub 应用程序。

排查集成问题

添加存储库时存储库列表为空

如果存储库列表在Azure DevOps中显示为空:

“访问请求待处理”卡住状态

如果组织访问权限仍处于待处理状态:

  • 必须是GitHub组织所有者或管理员才能批准请求。
  • 在授权应用设置的“组织访问权限”部分中,选择“授予”。
  • 如果问题仍然存在,请卸载Azure Boards应用,然后按照“安装和配置Azure Boards应用”中的步骤重新安装该应用。

关联拉取请求后徽章未显示

如果在关联拉取请求后,徽章没有显示在 README 文件中:

  • 仅当你关联了拉取请求,且该存储库在你的已连接列表中排在第一位时,才会显示该徽章。
  • 确认你提供链接的 PR 仍处于打开状态(已合并的 PR 不会触发徽章创建)。
  • 检查Azure Boards是否对存储库具有写入访问权限。

身份验证或权限错误

如果在安装过程中看到身份验证错误:

  • 验证你是GitHub中的组织所有者或管理员。
  • 确保GitHub组织没有限制第三方应用程序访问。
  • 检查是否对要连接的存储库具有 读取 权限。
  • 尝试注销GitHub并重新登录,然后重试授权。

后续步骤