Поделиться через


Использование GitHub Copilot с Azure Boards

Azure DevOps Services

Azure Boards интегрируется с GitHub Copilot для упрощения рабочего процесса разработки. Рабочие задачи можно использовать непосредственно с Copilot, которая автоматически создает ветви, реализует изменения кода и формирует черновики запросов на вытягивание, пока рабочая задача обновляется с учетом прогресса.

Эта интеграция позволяет:

  • Запуск автоматического написания кода из рабочих элементов
  • Отслеживайте прогресс GitHub Copilot непосредственно в Azure DevOps
  • Автоматическая связь созданных запросов на вытягивание и ветвей с рабочими элементами
  • Отслеживание, когда черновики запросов на вытягивание готовы к проверке

Это важно

Для этой интеграции требуется GitHub репозитории и GitHub проверка подлинности приложения. Azure Repos (репозитории Azure DevOps Git) не поддерживаются для интеграции GitHub Copilot.

Предпосылки

Категория Требования
Лицензирование Активная подписка GitHub Copilot
Репозиторий репозиторий GitHub (не Azure Repos) с соответствующими разрешениями
Аутентификация Аутентификация приложений GitHub настроена между Azure DevOps и GitHub (личные маркеры доступа не поддерживаются)
Разрешения Contribute доступ в Azure DevOps к рабочим элементам и возможность связывания артефактов
Подключение к Azure Boards Подключите Azure Boards к GitHub

Поддерживаемые типы рабочих элементов

Интеграция GitHub Copilot поддерживает любой тип рабочего элемента в соответствии с требованиями и категорией задач, в том числе:

  • Стандартные типы рабочих элементов: история пользователя, элемент невыполненной работы продукта, требование, задача, ошибка, проблема
  • Типы рабочих элементов, которые вы создали в своем шаблоне процесса

Эта широкая поддержка означает, что в проекте Azure DevOps можно использовать GitHub Copilot с рабочими элементами из любого шаблона процесса (Agile, Scrum, CMMI или custom).

Запуск GitHub Copilot из рабочих элементов

  1. Откройте рабочий элемент, который вы хотите использовать с GitHub Copilot.

  2. В форме рабочего элемента выберите значок GitHub.

    Если доступны несколько вариантов, кнопка становится раскрывающимся меню с разными вариантами.

    Скриншот с выделенным значком GitHub Copilot в элементе работы.

  3. Выберите Создать pull-реквест с помощью GitHub Copilot.

    Скриншот с выбранным раскрывающимся списком меню GitHub и параметром «Создать pull request GitHub».

  4. Выберите целевой репозиторий и ветку GitHub, в которых Copilot должен создать пулреквест.

    Замечание

    В списке репозиториев отображаются только репозитории GitHub, подключенные через проверку подлинности приложения GitHub. Azure Repos не поддерживаются.

  5. (Необязательно) Добавьте специальные инструкции, чтобы направить подход Copilot к внедрению. Например, можно добавить "Создать README с инструкциями по настройке".

  6. Выберите "Создать", чтобы начать автоматизированный процесс программирования.

    Screenshot отображает раскрывающиеся списки меню для репозитория и ветки для создания чернового пул-реквеста через Copilot.

Что происходит при запуске Copilot

При запуске Copilot из рабочего элемента выполняются следующие автоматизированные процессы:

  • Обмен данными: Azure DevOps делится названием рабочего элемента, большими текстовыми полями (например, описанием и условиями принятия), комментариями и ссылкой обратно на рабочий элемент через GitHub Copilot.
  • Подтверждение лицензии: Azure DevOps проверяет лицензию GitHub Copilot.
    • Если проверка завершается ошибкой, появляется опция Получение лицензии для покупки GitHub Copilot.
  • Подготовка репозитория: Copilot создает новую ветвь для работы.
  • Создание pull request: черновик pull request автоматически создается и связывается с вашей задачей.
  • Обновления рабочих элементов:
    • К обсуждению рабочего элемента добавляется комментарий.
    • Индикатор состояния отображается над разделом "Разработка".
    • Ссылки на ветки и запросы на вытягивание добавляются автоматически.
  • Progress tracking: обновления состояния в реальном времени показывают прогресс Copilot.

Отслеживание прогресса GitHub Copilot

Индикаторы состояния

Azure DevOps отображает состояние Copilot непосредственно на рабочем элементе с тремя возможными состояниями:

  • In Progress: Copilot активно работает над изменениями кода.
  • Готово к проверке: черновик pull request завершен и готов для вашего рассмотрения.
  • Ошибка: проблемы произошли во время процесса написания кода (наведите указатель мыши на подробные сведения).

Замечание

Ожидается, что операция Copilot займет 5–15 минут в зависимости от сложности рабочего элемента.

Индикаторы карточек доски задач

При просмотре рабочих элементов на доске можно определить состояние GitHub Copilot непосредственно на карточке рабочего элемента. На карточке отображается значок GitHub Copilot и указывает, что Copilot работает над этим элементом или завершает работу.

Скриншот с карточкой рабочего элемента на доске со значком состояния GitHub Copilot, показывающим прогресс.

Этот визуальный индикатор помогает быстро определить, какие рабочие элементы имеют активные операции Copilot, не открывая каждый отдельный рабочий элемент.

Обновления раздела разработки

В разделе "Разработка" рабочего элемента автоматически отображается:

  • Связанная ветвь, созданная Copilot.
  • Черновик запроса на вытягивание с состоянием реального времени.
  • Прямые ссылки на просмотр созданного кода в GitHub.

Проверка и слияние запроса на вытягивание

  1. Выберите ссылку на pull request, чтобы ознакомиться с реализацией Copilot в GitHub.

  2. Если вы удовлетворены изменениями, преобразуйте черновик в обычный pull request. Обсуждение рабочего элемента получает автоматические обновления об изменениях состояния pull-запроса.

  3. Используйте интерфейс GitHub для проверки, комментария и утверждения созданного кода.

  4. Завершите процесс слияния в GitHub, когда вы будете готовы.

    • Коммит слияния автоматически связывается с вашим рабочим элементом.
    • При удалении ветви ссылки на ветви удаляются.
    • Индикаторы состояния Copilot скрываются после успешного выполнения слияния.
  5. После слияния pull request:

    1. Чтобы отразить завершение, обновите состояние рабочего элемента.
    2. Убедитесь, что коммит слияния присутствует в разделе "Разработка".
    3. Закройте рабочий элемент, если реализация полностью отвечает требованиям.

Для получения дополнительной информации см. наш учебный модуль Начало работы с GitHub Copilot.

Устранение неполадок

  • Проверьте сведения об ошибке: наведите указатель мыши на значок ошибки, чтобы узнать, что произошло неправильно.

  • Rerun Copilot: выберите Rerun Copilot, чтобы повторить процесс с теми же или измененными инструкциями.

    Скриншот показывает выбранный значок

  • Вмешательство вручную: При необходимости внесите изменения вручную в созданную ветвь и запрос на слияние.

Проблемы с лицензиями

  • Проблема: проверка лицензии не удаётся.
  • Solution: Убедитесь, что у вас есть активная подписка GitHub Copilot и выберите Получить лицензию при необходимости.

Доступ к репозиторию

  • Проблема. Не удается увидеть ожидаемые репозитории.
  • Решение:
    • Проверьте подключение приложения GitHub между Azure DevOps и GitHub.
    • Убедитесь, что у вас есть доступ к репозиториям GitHub (не Azure Repos).
    • Проверьте разрешения репозитория и аутентификацию GitHub приложения.
    • Убедитесь, что репозиторий подключен через правильную интеграцию с приложением GitHub.

Ошибки Copilot

  • Проблема: агент программирования сталкивается с ошибками.
  • Solution: просмотрите сведения об ошибке, проверьте инструкции по ясности и попробуйте повторно запустить Copilot.

Состояние не обновляется

  • Проблема: состояние хода выполнения остается застрявшим.
  • Solution: Проверьте GitHub для фактического прогресса, поскольку обновления статуса зависят от отчетов GitHub.

Лучшие практики

  • Чёткие описания рабочих элементов: Укажите подробные критерии принятия и контекст для улучшения результатов Copilot.
  • Держите изменения простыми и краткими: чем более сложное и подробное описание рабочего элемента, тем труднее Copilot это понять. Сосредоточьтесь на четких, конкретных требованиях.
  • Инструкции по внедрению и реализации: добавьте рекомендации по запуску Copilot.
  • Регулярный мониторинг: периодически проверяйте ход выполнения, особенно для сложных рабочих элементов.
  • Быстрая проверка: просматривайте и оставляйте отзывы о черновых pull-запросах быстро, чтобы поддержать темп.
  • Правильная гигиена рабочих элементов: обновление состояния рабочего элемента соответствующим образом во время процесса.

Ограничения

Помните о следующих ограничениях при использовании GitHub Copilot с Azure Boards:

  • Зависимости. Обработка зависимостей между рабочими элементами не поддерживается. Каждый рабочий элемент должен быть автономным.
  • Конкурсентные операции. Управление несколькими параллельными операциями Copilot в разных рабочих элементах не поддерживается. Выполните одну операцию Copilot перед запуском другой операции.
  • Обмен данными: только название рабочего элемента, большие текстовые поля, комментарии и ссылка на рабочий элемент передаются GitHub Copilot.
  • Complexity: чрезмерно сложные или подробные описания рабочих элементов могут снизить эффективность Copilot.