title | titleSuffix | description | ms.service | ms.topic | ms.author | author | monikerRange | ms.date |
---|---|---|---|---|---|---|---|---|
Install the Azure Boards app for GitHub |
Azure Boards |
Learn how to configure the Azure Boards app to connect one or more GitHub repositories to Azure Boards, and change GitHub repo access. |
azure-devops-boards |
quickstart |
chcomley |
chcomley |
>= azure-devops-2019 |
03/01/2024 |
[!INCLUDE version-gt-eq-2019]
Install the Azure Boards app for GitHub to connect Azure Boards to your GitHub repositories. When you connect Azure Boards projects with GitHub.com repositories, you support linking between GitHub commits and pull requests to work items. You can use GitHub for software development while using Azure Boards to plan and track your work.
For an overview of the integration that the Azure Boards app for GitHub supports, see Azure Boards-GitHub integration. Once you install the Azure Boards app for GitHub on your GitHub account or organization, choose which GitHub repositories you want to connect to from your project.
Permissions:
- Be an administrator or owner of the GitHub organization to install the Azure Boards app.
- Have Read permissions for the GitHub repository.
- Be a member of the Project Collection Administrators group. If you created the project, you already have these permissions.
Important
If your repository is already connected via another authentication type such as OAuth, you must remove that repository from your existing connection before you re-connect it via the GitHub App. Follow the steps provided in Add or remove GitHub repositories later in this article before you configure the GitHub App.
You can connect an Azure DevOps organization to multiple GitHub repositories if you're an administrator for those repositories. However, you shouldn't connect a GitHub repository to more than one Azure DevOps organization.
To grant GitHub access to your Azure DevOps organization, do the following steps.
-
From the GitHub web portal, open Settings from your profile menu.
:::image type="content" source="media/troubleshoot/choose-settings.png" alt-text="Screenshot of open profile, choose Settings.":::
-
Select Applications under Integrations.
-
Select Authorized GitHub Apps > Azure Boards.
:::image type="content" source="media/troubleshoot/open-azure-boards.png" alt-text="Screenshot of Authorized OAuth Apps tab, choose Azure Boards.":::
-
Under Organization access, resolve any issues that might appear. Select Grant to grant access to any organizations that show as having an Access request pending.
:::image type="content" source="media/troubleshoot/organization-access-issues.png" alt-text="Screenshot of Organization access with organizations without access.":::
-
Go to the Azure Boards app in the GitHub Marketplace.
-
Select Set up a plan.
:::image type="content" source="media/github-app/install-azure-boards-app-from-marketplace.png" alt-text="Screenshot of GitHub Marketplace, Set up a plan button.":::
-
Choose the GitHub organization you want to connect to Azure Boards.
:::image type="content" source="media/github-app/choose-github-account.png" alt-text="Screenshot showing Install Azure Boards dialog.":::
-
Choose the repositories that you want to connect to Azure Boards.
In the following example, we choose to connect to all repositories.
:::image type="content" source="media/github-app/install-options.png" alt-text="Screenshot showing all repositories selected.":::
-
Choose the Azure DevOps organization and Azure Boards project you want to connect to GitHub.com.
:::image type="content" source="media/github-app/choose-azure-boards-project.png" alt-text="Screenshot of setting up connection dialog.":::
You can only connect one project at a time. If you have other projects you want to connect, you can do that later as described in Configure other projects or repositories later in this article.
-
To connect with GitHub.com, authorize your Azure Boards organization.
:::image type="content" source="media/github-app/authorize-azure-boards.png" alt-text="Screenshot of Azure Boards authorization dialog.":::
-
Confirm the GitHub.com repositories that you want to connect. Select each repository you want to connect to. Unselect any repositories that you don't want to participate in the integration.
:::image type="content" source="media/github-app/confirm-github-repos.png" alt-text="Screenshot of Confirm your GitHub repositories dialog.":::
At this point, your Azure Boards-GitHub integration is complete. You can skip the next steps or go through them to understand the features supported with the connection.
-
On your board, select New work item to enter a new work item named "Add badge to README"—Issue (Basic), User Story (Agile), or Product Backlog Item (Scrum)—depending on the process model used by your Azure Boards project.
A work item titled Add badge to README appears on your board.
-
Open your work item, go to the Development section, and select Add link.
-
Select GitHub Pull Request from the Link type dropdown menu.
-
Select the repository and enter the pull request ID and an optional comment.
-
Select Add link.
:::image type="content" source="media/troubleshoot/add-link-to-pull-request-2.png" alt-text="Screenshot of Add link action in user story, showing repository selection and empty boxes for input of pull request ID and optional comment.":::
The following actions occur in the background, automatically:
- Adds a badge to the README file of the first repository in the list of connected GitHub repositories.
- Creates a GitHub commit for the update made by adding the badge to the README file.
- Creates a GitHub pull request to merge the changes made to the README file.
- Links the GitHub commit and pull request to the work item created in step 1.
-
Select the first pull request link from your work item.
:::image type="content" source="media/github-app/issue-add-badge.png" alt-text="Screenshot of issue form for pull request opened in GitHub.":::
The GitHub pull request opens in a new browser tab.
-
Select Merge pull request.
:::image type="content" source="media/github-app/git-hub-pr-for-badge-b.png" alt-text="Screenshot of example pull request in GitHub.":::
-
Go to your repository README file and view the badge that was added.
:::image type="content" source="media/github-app/readme-file-with-badge.png" alt-text="Screenshot of GitHub repo with badge added.":::
For more information, see Configure status badges to add to GitHub README files.
You can configure other Azure Boards/Azure DevOps Projects, GitHub.com repositories, or change the current configuration from the Azure Boards app page. For more information, see Change GitHub repository access, or suspend or uninstall the integration.
If you encounter a problem with a connection, we recommend that you remove the connection and start over with a new connection.
::: moniker range=">= azure-devops-2020"
-
From your project in Azure DevOps, go to Project settings > GitHub connections.
-
To add or remove repositories, select the More options ellipses for the connection and choose Add repositories or Remove repositories from the menu.
:::image type="content" source="media/connect-cloud/connection-menu.png" alt-text="Screenshot of GitHub connection menu of More options.":::
-
To remove all repositories and the connection, choose the Remove connection option. Then, choose Remove to confirm.
:::image type="content" source="media/github/remove-connection-confirmation.png" alt-text="Screenshot of confirmation removal of GitHub connection.":::
::: moniker-end
::: moniker range="azure-devops-2019"
-
To add or remove repositories, open the :::image type="icon" source="../../media/icons/actions-icon.png" border="false"::: actions icon for the connection and choose Add repositories or Remove repositories from the menu.
:::image type="content" source="media/github/repo-actions-menu.png" alt-text="Screenshot of add or remove GitHub repos.":::
-
To remove all repositories and the connection, choose the Remove connection option. Then, choose Remove to confirm.
:::image type="content" source="media/github/remove-connection-confirmation.png" alt-text="Screenshot of confirmation of GitHub connection removal dialog.":::
::: moniker-end
-
Sign into GitHub and open your organization profile settings.
https://github.com/organizations/fabrikam-fiber/settings/profile
-
Go to Installed GitHub Apps > Azure Boards > Configure.
:::image type="content" source="media/change-repo-access/open-installed-github-apps.png" alt-text="Screenshot of open Organization account, Installed GitHub Apps, Azure Boards, Configure.":::The Azure Boards configuration page opens.
-
Scroll down to the Repository access section.
-
Choose the option you want, All repositories or Only select repositories.
If you choose Only select repositories, select the repositories you want to participate in integration with Azure Boards.
:::image type="content" source="media/change-repo-access/choose-repositories.png" alt-text="Screenshot of Repository access, choose Only select repositories.":::
-
Select Save.
-
Starting from step 2 in the previous procedure, scroll down to the Danger zone section.
:::image type="content" source="media/change-repo-access/danger-zone.png" alt-text="Screenshot of Azure Boards configuration, Danger zone section.":::
-
To suspend the integration, choose Suspend. From the popup confirmation window, choose OK to confirm the suspension.
:::image type="content" source="media/change-repo-access/suspend-confirmation-popup.png" alt-text="Screenshot of suspension confirmation.":::
To unsuspend the integration, choose Unsuspend.
-
To uninstall the Azure Boards app, choose Uninstall, and then choose OK from the popup confirmation window.
:::image type="content" source="media/change-repo-access/uninstall-confirmation-popup.png" alt-text="Screenshot of uninstall confirmation.":::
If you change the repositories that the Azure Boards app for GitHub supports, you might get redirected to Azure Boards GitHub connections. A good practice is to remove the repositories in Azure Boards that can no longer connect to GitHub. For more information, see Add or remove GitHub repositories.
If you uninstall the Azure Boards app for GitHub, the following message displays in Azure Boards, Project settings > GitHub connections. Choose Remove connection to remove all previously made GitHub connections. For more information, see Add/remove GitHub repositories.
:::image type="content" source="media/change-repo-access/boards-remove-connection.png" alt-text="Screenshot of uninstalled Azure Boards GitHub app.":::
[!div class="nextstepaction"] Link GitHub commits, pull requests, and branches to work items