Skip to main content

Повышение качества недавно объединенного кода с помощью ИИ

Изучите GitHub Code Quality результаты для недавно объединенного кода и исправьте с помощью Автофикс второго пилота или делегируйте работу по исправлению Агент кодирования Copilot.

Кто может использовать эту функцию?

Пользователи с доступом на запись

GitHub Team или GitHub Enterprise Cloud

Примечание.

GitHub Code Quality в настоящее время находится в public preview и может быть изменен. Во время public preview, Code Quality не будут оплачиваться, хотя Code Quality сканирование займет GitHub Actions минут.

Введение

Этот урок показывает, как исследовать и устранять проблемы с качеством, выявленные AI-анализом кода Code Quality, недавно интегрированным в вашу стандартную ветку.

Когда вы улучшаете качество недавно объединенных файлов, вы уменьшаете технический долг в репозитории и облегчаете работу других разработчиков с файлами, которые находятся в активной разработке.

Code Quality имеет две линии защиты

Code Quality сканирует запросы на вытягивание и комментарии по вопросам качества, а затем запускает второе сканирование AI после объединения запроса на вытягивание. Эти два типа сканирования используют взаимодополняющие технологии:

  •         **Сканирование запросов на вытягивание** использует правила CodeQL для выявления проблем. Этот анализ тщательно протестирован, хорошо выявляет, где код не соответствует правилам качества, и может анализировать множество файлов. Тем не менее, он поддерживает подмножество языков программирования и не может идентифицировать проблемы, для которых нет правила.
    
  •         **При сканировании недавно объединенных файлов** используется большая языковая модель для анализа последних измененных файлов и создания отчетов о результатах для 5. Этот анализ проверяет ваш код на всех языках, не ограничиваясь правилами, и предоставляет контекстуальные сведения и предложения, которые могут выйти за рамки того, что предлагают правила CodeQL.
    

Предпосылки

  • Code Quality включено, см. AUTOTITLE.
  • По крайней мере один запрос на вытягивание был объединен с тех пор, как был включен Code Quality.

1. Просмотрите предложения ИИ для репозитория

После сканирования Code Quality недавно объединенных файлов в вашей ветке по умолчанию, вы можете увидеть результаты в представлении Выводы ИИ , которое отображает результаты для файлов до 5.

  1. Перейдите на вкладку «Безопасность» вашего репозитория.
  2. Нажмите, чтобы развернуть Качество кода, затем нажмите Выводы ИИ.

Примечание.

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

2. Изучите предлагаемые улучшения для репозитория

На странице Выводы ИИ каждый файл перечислен с указанием количества выявленных проблем с качеством и временем отправки файла в ветвь по умолчанию.

  • Щелкните имя файла, чтобы просмотреть сведения об обнаруженных проблемах с качеством и предлагаемых исправлениях.

Скриншот представления "Выводы ИИ" для качества кода.

3. Делегируйте работу по исправлению или открывайте запросы на вытягивание самостоятельно

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

Делегируйте работу Агент кодирования Copilot

Вы можете попросить Агент программирования открыть запросы на вытягивание для внесения улучшений в файлы, используя предложенные изменения в качестве запроса. Это лучший вариант, если предложенные изменения кажутся вам хорошими и вы хотите открыть запрос на вытягивание, который применяет исправления к более чем одному файлу.

Чтобы делегировать создание пулл-реквеста:

  •         **Несколько файлов:** Выберите файлы, которые вы хотите включить, затем нажмите **Назначить выбранные Copilot** в заголовке списка файлов.
    
  •         **Один файл:****Нажмите Назначить Copilot** для файла.
    

Есть задержка, пока Агент программирования настраивает работу. Когда пулл-реквест открыт и идет работа, отображается баннер со ссылкой на пул-реквест.

Вы можете отслеживать Агент кодирования Copilotработу }:

Открытие собственных запросов на вытягивание

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

  • Вы хотите поработать над изменениями локально или в GitHub Desktop перед открытием запроса на вытягивание
  • У вас нет доступа к Агент кодирования Copilot

Примечание.

Когда вы открываете запрос на вытягивание самостоятельно, вы можете фиксировать исправления только в одном файле за раз. Чтобы исправить несколько файлов одновременно, необходимо использовать Агент кодирования Copilot.

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

  1. Щелкните имя файла, чтобы просмотреть сведения об обнаруженных проблемах с качеством.

  2. Ознакомьтесь с проблемами и предложенными способами их устранения.

  3. Разверните выпадающее меню Назначить Copilot и затем нажмите Открыть запрос на вытягивание , чтобы изменить вариант по умолчанию на "Открыть запрос на вытягивание". Ваши предпочтения запоминаются.

    Скриншот представления "Выводы ИИ" для качества кода.

  4. Нажмите кнопку Открыть запрос на вытягивание , чтобы открыть диалоговое окно с параметрами фиксации.

  5.        **Нажмите Зафиксировать изменение**, чтобы создать запрос на вытягивание с исправлениями.
    

4. Предоставьте рецензентам пул-реквестов контекст

Предоставление контекста о том, почему вы предлагаете изменения в коде, — лучший способ побудить членов команды пересмотреть ваш запрос на вытягивание. Если вы использовали Агент кодирования Copilot, сводка запроса на вытягивание уже содержит полную информацию о проблемах, исправленных запросом на вытягивание.

Если вы открыли запрос на вытягивание непосредственно из представления GitHub Code Quality, сводка запроса на вытягивание ссылается на представление "Выводы ИИ". Возможно, вы захотите скопировать некоторые объяснения из представления Выводы ИИ в сводку запроса на вытягивание.

Скриншот сводки запроса на вытягивание, созданного GitHub Code Quality.

5. Посмотрите, как ваши изменения влияют на переменные данных.code-quality.recent_suggestions %}

Когда вы возвращаетесь к просмотру "Выводы ИИ" после объединения вашего запроса на вытягивание, исправленные вами результаты больше не отображаются.

Дальнейшие шаги