Подключение Azure Boards к GitHub (облако)
Azure DevOps Services
Используйте GitHub.com репозитории для разработки программного обеспечения и проекта Azure Boards для планирования и отслеживания работы. Подключите проект и репозиторий, чтобы коммиты и пул-реквесты в GitHub были связаны с рабочими элементами в Azure Boards.
Примечание.
Azure Boards и Azure DevOps Services поддерживают интеграцию с репозиториями GitHub.com и GitHub Enterprise Server. Если вы хотите подключиться с локального сервера Azure DevOps Server, см. статью "Подключение Azure DevOps Server к GitHub Enterprise Server".
Предварительные требования
Категория | Требования |
---|---|
разрешения | — Член группы администраторов коллекции проектов , если вы создали проект, у вас есть разрешения. - администратор или владелец репозитория GitHub для подключения. Вы можете подключиться к нескольким репозиториям GitHub до тех пор, пока вы являетесь администратором этих репозиториев. |
членство в проекте | член проекта. |
Варианты проверки подлинности
Следующие параметры проверки подлинности поддерживаются на основе платформы GitHub, к которой вы хотите подключиться.
GitHub.com
GitHub Enterprise Server
Примечание.
Если вы решили подключить GitHub с помощью PAT, настройте единый вход (SSO) для PAT в учетной записи GitHub. Эта конфигурация необходима для получения списка репозиториев из организации с включенной проверкой подлинности единого входа на языке утверждения безопасности (SAML).
Подключение Azure Boards к репозиторию GitHub
Войдите в проект (
https://dev.azure.com/{Your_Organization/Your_Project}
).Выберите настройки проекта>подключения GitHub.
Если вы впервые подключаетесь из проекта, выберите "Подключить учетную запись GitHub ", чтобы использовать учетные данные учетной записи GitHub.
В противном случае выберите
новое подключение и выберите метод проверки подлинности в диалоговом окне "Создать подключение".
При подключении с учетной записью GitHub используйте учетные данные GitHub для проверки подлинности. Сведения об использовании PAT см. в разделе "Добавление подключения GitHub с помощью PAT". Сведения о подключении к GitHub Enterprise Server см. в разделе "Регистрация Azure DevOps" в GitHub в качестве Приложение OAuth.
Добавьте подключение к GitHub, используя учетные данные GitHub
Вы можете подключить до 1000 репозиториев GitHub к проекту Azure Boards.
Если вы впервые подключаетесь к GitHub из Azure Boards, войдите с помощью учетных данных GitHub. Выберите учетную запись, для которой вы являетесь администратором репозитория.
Выберите учетную запись или организацию GitHub, которую вы хотите подключить. Перечислены только организации, которыми вы владеете или являетесь администратором.
Если все репозитории для организации уже подключены к Azure Boards, показано следующее сообщение:
Введите учетные данные GitHub. Если у вас включена двухфакторная проверка подлинности, введите код проверки подлинности, отправленный GitHub, и нажмите кнопку "Проверить". В противном случае система автоматически распознает вашу организацию GitHub, так как учетная запись GitHub связана с учетной записью Azure DevOps Services.
Добавление репозиториев GitHub
После проверки подлинности можно выбрать репозитории, которые вы хотите подключить.
Диалоговое окно "Добавление репозиториев GitHub" автоматически отображается и выбирает все репозитории GitHub.com, для которых вы являетесь администратором выбранной организации. Отмените выбор любых репозиториев, которые вы не хотите включить в интеграцию.
Совет
Чтобы избежать неожиданного связывания через ссылки AB#, рекомендуется подключить репозиторий GitHub к проектам в рамках одной организации Azure DevOps. Подключение одного репозитория GitHub к проектам в нескольких организациях Azure DevOps может вызвать проблемы. Дополнительные сведения см. в статье "Устранение неполадок интеграции GitHub и Azure Boards".
Если все репозитории уже подключены к текущей или другой организации, отобразится следующее сообщение:
После выбора нажмите кнопку "Сохранить".
Подтверждение подключения
Просмотрите страницу GitHub, которая отображается, а затем выберите "Утвердить", " Установить" и "Авторизовать".
Укажите учетные данные GitHub для подтверждения.
По завершении вы увидите новое подключение с выбранными репозиториями, перечисленными.
Сведения об изменении конфигурации или управлении приложением Azure Boards для GitHub см. в статье "Изменение доступа репозитория к Azure Boards".
Добавление подключения GitHub с помощью PAT
Внимание
Мы рекомендуем использовать токены Microsoft Entra. Дополнительные сведения о наших усилиях по сокращению использования PAT см. в блоге. Ознакомьтесь с нашим руководством по проверке подлинности , чтобы выбрать подходящий механизм проверки подлинности для ваших потребностей.
Мы рекомендуем использовать учетные данные учетной записи GitHub для подключения к репозиторию GitHub.
Совет
При создании GitHub PAT убедитесь, что вы включаете следующие области: repo, read:user, user:email, admin:repo_hook
Выберите личный маркер доступа.
Чтобы создать GitHub PAT, перейдите в Настройки разработчика GitHub и выберите > токены личного доступа.
Введите PAT и нажмите кнопку "Подключиться".
Выберите репозитории, которые вы хотите подключить к проекту, следуя процедурам, описанным в разделе "Выбор репозиториев " ранее в этой статье.
Если вы впервые подключаетесь к учетной записи или организации GitHub из Azure Boards, установите приложение Azure Boards для GitHub. Подтвердите подключение в начале этой статьи.
Регистрация Azure DevOps в GitHub в качестве приложения OAuth
Чтобы использовать OAuth для подключения Azure DevOps к GitHub Enterprise Server, сначала зарегистрируйте приложение в качестве Приложение OAuth. Дополнительные сведения см. в статье "Создание Приложение OAuth".
Регистрация Azure DevOps Services
Войдите на веб-портал для сервера GitHub Enterprise.
Откройте Настройки>Настройки разработчика>Приложения OAuth>Новое приложение OAuth.
Введите сведения о регистрации.
Для URL-адреса домашней страницы укажите URL-адрес организации.
Для обратного URL-адреса авторизации используйте следующий шаблон для создания URL-адреса.{Azure DevOps Services Organization URL}/_admin/oauth2/callback
Например:
https://dev.azure.com/fabrikam/_admin/oauth2/callback
Выберите Register application (Зарегистрировать приложение).
Появится идентификатор клиента и секрет клиента для зарегистрированного приложения OAuth.
Регистрация конфигурации OAuth в Azure DevOps Services
Войдите на веб-портал для Azure DevOps Services.
Добавьте конфигурацию Oauth GitHub Enterprise в вашу организацию.
В настройках организации выберите конфигурации Oauth>Добавить конфигурацию Oauth.
Введите сведения и нажмите кнопку "Создать".
Подключение Azure DevOps Services к GitHub Enterprise Server
Внимание
Чтобы подключить Azure DevOps Services к серверу GitHub Enterprise Server, убедитесь, что корпоративный сервер GitHub доступен из Интернета. Убедитесь, что Azure DNS может разрешить имя вашего сервера GitHub Enterprise Server и что брандмауэр разрешает доступ с IP-адресов Центра обработки данных Azure. Чтобы определить диапазон IP-адресов, ознакомьтесь с диапазонами IP-адресов Центра обработки данных Microsoft Azure. Часто возникает сообщение об ошибке: при проблемах с подключением
Не удалось разрешить имя удаленного сервера: "github-enterprise-server.contoso.com"
Если вы столкнулись с этой ошибкой, проверьте доступность сервера. Дополнительные сведения см. в статье "Вопросы и ответы по Azure DNS".
Выберите Настройки проекта>Подключения GitHub>GitHub Enterprise Server для первого подключения.
Или в диалоговом окне "Новое подключение GitHub" выберите GitHub Enterprise Server.
Выберите метод проверки подлинности.
Подключение с помощью OAuth
Выберите конфигурацию, настроенную на шаге 4 регистрации конфигурации OAuth в Azure DevOps Services, а затем нажмите кнопку Connect.
Подключитесь с помощью личного токена доступа
Введите URL-адрес вашего сервера GitHub Enterprise и учетные данные личного токена доступа, которые распознаются этим сервером. Затем нажмите кнопку "Подключить".
Подключиться с учетными данными GitHub
Введите URL-адрес сервера GitHub Enterprise и учетные данные учетной записи администратора, распознанные этим сервером, а затем нажмите кнопку "Подключить".
В диалоговом окне перечислены все репозитории, для которых у вас есть права администрирования GitHub. Вы можете переключаться между «Мои» и «Все», чтобы увидеть, отображаются ли другие, а затем выбрать те, которые нужно добавить. Выберите Сохранить, когда вы закончите.
Совет
Вы можете подключиться только к репозиториям, определенным в одной организации GitHub. Чтобы подключить проект к другим репозиториям, определенным в другой организации GitHub, необходимо добавить другое подключение.
Если вы впервые подключаетесь к учетной записи или организации GitHub из Azure Boards, вы также установите приложение Azure Boards для GitHub. Подтвердите подключение в начале этой статьи.
Устранение неполадок с подключением
Интеграция Azure Boards-GitHub использует различные протоколы проверки подлинности для поддержания подключения. Изменения области разрешений пользователя или учетных данных проверки подлинности могут отозвать репозитории GitHub, подключенные к Azure Boards.
Общие сведения об интеграции, поддерживаемой приложением Azure Boards для GitHub, см. в статье об интеграции Azure Boards-GitHub.
Поддерживаемые параметры проверки подлинности
Следующие поддерживаемые параметры проверки подлинности зависят от платформы GitHub, к к которому вы подключаетесь:
Платформа
GitHub.com
GitHub Enterprise Server
Azure DevOps Services
- учетная запись пользователя GitHub.com
- Личный токен доступа
- OAuth
- PAT
- Учетные данные GitHub
Azure DevOps Server 2020
Неприменимо
- PAT
- Учетные данные GitHub
Сервер Azure DevOps 2019
Нет данных
- OAuth
- PAT
- Учетные данные GitHub
Примечание.
С приложением Azure Boards для GitHub, Azure Boards и Azure DevOps Services интегрируются с репозиториями GitHub.com и GitHub Enterprise Server. Azure DevOps Server 2019 и более поздних версий поддерживают интеграцию только с репозиториями GitHub Enterprise Server. Интеграция с другими репозиториями Git не поддерживается.
Предоставление доступа к организации Azure Boards
Если интеграция между Azure Boards и GitHub не работает должным образом, убедитесь, что предоставлен доступ организации.
На веб-портале GitHub откройте Настройки из меню профиля.
Выберите Applications в разделе Integrations>Авторизованные OAuth приложения>Azure Boards.
В разделе "Доступ к организации" устраните все проблемы, которые могут возникнуть. Выберите "Предоставить", чтобы предоставить доступ к любым организациям, которые отображаются как ожидающие запроса на доступ.
Устранение проблем с доступом
Когда подключение Azure Boards к GitHub теряет доступ, в пользовательском интерфейсе появится предупреждение с красным крестиком. Наведите указатель мыши на предупреждение, чтобы увидеть, что учетные данные больше недействительны. Чтобы устранить проблему, удалите подключение и создайте новое.
Чтобы устранить эту проблему, рассмотрите следующие элементы:
Если подключение использует OAuth:
Приложению Azure Boards было отказано в доступе к одному из репозиториев.
GitHub может быть недоступным или недостижимым. Эта недоступность может быть вызвана сбоем в службе или локальной проблеме инфраструктуры или сети. Состояние службы можно проверить со следующими ссылками:
Удалите и повторно создайте подключение к репозиторию GitHub. Это повторное подключение приводит к тому, что GitHub запрашивает повторную проверку подлинности Azure Boards.
Если подключение использует PAT:
ПАТ был отозван, или изменились необходимые области разрешений и этого недостаточно.
У пользователя могут не быть разрешения администратора в репозитории GitHub.
Создайте заново PAT и убедитесь, что область применения маркера включает необходимые разрешения:
repo, read:user, user:email, admin:repo_hook
. Дополнительные сведения см. в рекомендациях по использованиюPATs.
Разрешение неработаемого подключения GitHub Enterprise Server
Если вы перешли с Azure DevOps Server на Azure DevOps Services с существующим подключением GitHub Enterprise Server, существующее подключение может не работать должным образом. Упоминания о рабочем элементе в GitHub могут быть отложены или никогда не отображаются в Azure DevOps Services, так как URL-адрес обратного вызова, связанный с GitHub, больше не является допустимым. Рассмотрим следующие решения:
Удалите и повторно создайте подключение: удалите и повторно создайте подключение к репозиторию GitHub Enterprise Server. Выполните последовательность шагов, описанных в документации Connect from Azure Boards.
Исправьте URL-адрес веб-перехватчика: перейдите на страницу параметров репозитория GitHub и измените URL-адрес веб-перехватчика, указав URL-адрес перенесенной организации Azure DevOps:
https://dev.azure.com/{OrganizationName}/_apis/work/events?api-version=5.2-preview
Подключение к нескольким организациям Azure DevOps
Подключение репозитория GitHub к проектам в нескольких организациях Azure DevOps, таких как dev.azure.com/Contoso и dev.azure.com/Fabrikam, может привести к неожиданным результатам при упоминании AB#. Идентификаторы рабочих элементов не являются уникальными в организациях Azure DevOps, поэтому AB#12 может ссылаться на рабочий элемент в Contoso или Fabrikam. Если рабочий элемент упоминается в сообщении фиксации или пулл-реквесте, обе организации могут попытаться связаться с рабочим элементом с соответствующим идентификатором, что приводит к путанице.
Чтобы избежать этой проблемы, подключите один репозиторий GitHub только к одной организации Azure DevOps.
Примечание.
При подключении с помощью приложения Azure Boards для GitHub приложение запрещает подключения к нескольким организациям. Если репозиторий GitHub подключен к неправильной организации Azure DevOps, обратитесь к владельцу этой организации, чтобы удалить подключение перед добавлением репозитория в правильную организацию Azure DevOps.
Обновление определений XML для выбора типов рабочих элементов
Обновите определения XML для типов рабочих элементов, если в организации используется модель размещенного XML или локального XML-процесса, чтобы настроить интерфейс отслеживания работы и связаться с типами ссылок GitHub из раздела "Разработка" в формах рабочих элементов.
Например, чтобы связать пользовательские истории и ошибки с фиксацией GitHub и извлечь запросы из раздела "Разработка ", обновите xml-определения для пользовательских историй и ошибок.
Следуйте последовательности задач, предоставленных в модели процесса размещенной XML, чтобы обновить определения XML. Для каждого типа рабочего элемента найдите Group Label="Development"
раздел и добавьте следующие две строки в синтаксисе кода для поддержки типов внешних ссылок: GitHub Commit и GitHub Pull Request.
<ExternalLinkFilter Type="GitHub Pull Request" />
<ExternalLinkFilter Type="GitHub Commit" />
После обновления раздел должен отображаться следующим образом.
<Group Label="Development">
<Control Type="LinksControl" Name="Development">
<LinksControlOptions ViewMode="Dynamic" ZeroDataExperience="Development" ShowCallToAction="true">
<ListViewOptions GroupLinks="false">
</ListViewOptions>
<LinkFilters>
<ExternalLinkFilter Type="Build" />
<ExternalLinkFilter Type="Integrated in build" />
<ExternalLinkFilter Type="Pull Request" />
<ExternalLinkFilter Type="Branch" />
<ExternalLinkFilter Type="Fixed in Commit" />
<ExternalLinkFilter Type="Fixed in Changeset" />
<ExternalLinkFilter Type="Source Code File" />
<ExternalLinkFilter Type="Found in build" />
<ExternalLinkFilter Type="GitHub Pull Request" />
<ExternalLinkFilter Type="GitHub Commit" />
</LinkFilters>
</LinksControlOptions>
</Control>
</Group>
Вопросы и ответы
Вопрос. Некоторые из моих пользователей в Azure DevOps имеют удостоверения GitHub. Нужно ли добавлять их в качестве новых пользователей GitHub в мою организацию?
Ответ. Нет. Попросите пользователей выйти, а затем войти в организацию с учетными данными GitHub из нового сеанса браузера. Это действие устанавливает свои удостоверения GitHub.
Вопрос. Я администратор организации, и я включил политику приглашения пользователей GitHub. Почему не удается пригласить новых пользователей GitHub?
Ответ. После изменения параметра выйдите из Azure DevOps, а затем войдите в организацию (dev.azure.com/{organizationName}
или organizationName.visualstudio.com
) с учетными данными GitHub из нового сеанса браузера.
Вопрос. Я вошел с помощью учетных данных GitHub, но почему не удается пригласить пользователей GitHub?
Ответ. Только администраторы организаций или проектов могут приглашать новых пользователей присоединиться к организации. Возможно, у вас нет необходимых разрешений для добавления новых пользователей. Обратитесь к администратору, чтобы получить необходимые разрешения или попросить его добавить пользователя.
Вопрос. Пользователи GitHub Enterprise получают бесплатный доступ к Azure DevOps?
Ответ. Дополнительные сведения см. в статье "Часто задаваемые вопросы об управлении пользователями и разрешениями" и "GitHub Enterprise".