Примечание.
GitHub Code Quality в настоящее время находится в public preview и может быть изменен. Во время public preview, Code Quality не будут оплачиваться, хотя Code Quality сканирование займет GitHub Actions минут.
Введение
В этом руководстве показано, как работать с GitHub Code Quality пулл-запросами, чтобы выявлять проблемы с качеством кода, которые ваши изменения могут случайно вызвать, а также как решать и решать результаты по качеству кода с Автофикс второго пилота помощью и Copilot облачный агент.
Преимущества раннего выявления проблем
Своевременное выявление проблем с качеством кода позволяет поддерживать кодовую базу вашей команды в форме. GitHub Code Quality Проверяет ваш код для:
-
**Надежность**: например, логические ошибки, небезопасная обработка ошибок или условия гонки, которые могут привести к сбою или непредсказуемому поведению приложения. Решая проблемы такого рода на ранней стадии, вы делаете свое программное обеспечение более надежным и надежным для пользователей. -
**Удобство обслуживания**: например, дублированный код, слишком сложная логика, неиспользуемые переменные или нарушения лучших практик кодирования. Исправление этих проблем делает код более чистым и удобным для чтения, поэтому будущие изменения будут более быстрыми и менее рискованными.
1. Поймите, как GitHub Code Quality работают pull requests
Когда вы открываете pull request, GitHub Code QualityCodeQL он автоматически сканирует ваши изменения на предмет проблем с качеством, как описанные выше.
Результаты CodeQL сканирования отображаются в виде комментариев к вашему pull-requestу, оставленным github-code-quality[бот]. Каждый комментарий соответствует определенной проблеме с качеством кода, которая была обнаружена в ваших изменениях, и поставляется с предлагаемым автоисправлением.
Комментарии помечаются по степени серьезности (Ошибка, Предупреждение, Примечание), чтобы вы могли видеть, какие выводы наиболее критичны для устранения.
2. Расставляйте приоритеты исправлений в зависимости от серьезности
Сначала просмотрите комментарии и определите результаты с наивысшим уровнем серьезности («Ошибка»).
Если нет результатов "Error", ищите результаты следующего уровня серьезности ("Warning") и так далее.
Результаты с высокой степенью серьезности указывают на более серьезные проблемы с качеством кода, которые с большей вероятностью приведут к проблемам с надежностью или удобством обслуживания в базе кода. Устраняя проблемы с высокой степенью серьезности, вы выполняете наиболее важную работу по поддержанию качества кода вашей команды.
Примечание.
Администратор репозитория может задать элемент качества кода, который блокирует слияние на вашем pull-запросе, если в Code Quality его запросе есть данные определённого уровня серьёзности или выше. См . раздел AUTOTITLE.
3. Использование Автофикс второго пилота или Copilot облачный агент исправление результатов
Автофикс второго пилота
Комментарии к запросу pull включают предлагаемое автоисправление , которое вы можете зафиксировать непосредственно в своем запросе pull. Внимательно изучите предложенное автоисправление на предмет логики, безопасности и стиля, затем нажмите «Предложить фиксацию».
Вам не нужна лицензия Copilot, чтобы применить эти предложения.
Copilot облачный агент
В качестве альтернативы, если у вас есть Copilot лицензия, вы можете поручить работу по восстановлению .Copilot облачный агент Прокомментируйте pull-request, @Copilot упоминая и запросы, которые Copilot исправляют выявленные проблемы.

Copilot Отвечает на ваш комментарий эмодзи глазами (👀) с глазами, начинает сессию нового агента и открывает pull request с необходимыми исправлениями.
Вы можете отслеживать Copilot облачный агентработу :
- В запросе на вытягивание сводка обновляется по мере выполнения работы.
- Используя страницу агентов или журналы сеансов, см. AUTOTITLE.
Для вызова Copilot облачный агентнужна Copilot лицензия.
Зарегистрируйтесь Copilot
4. Отмахивайтесь от несущественных выводов
Вы можете отклонить вывод, если он не имеет отношения к вашей кодовой базе или не требует действий. Распространенные причины для отклонения заключения включают:
- Находка содержится в устаревшем коде, который больше не поддерживается.
- Это известное исключение из стандартов программирования вашей команды.
- Это ложное срабатывание, которое не представляет реального риска для качества.
Отклонение неактуальных оповещений позволяет вашим проверкам качества сосредоточиться на значимых проблемах.
5. Отправьте изменения и дождитесь сканирования
После исправления или отклонения результатов отправьте изменения в ветвь, связанную с запросом на вытягивание. GitHub Code Quality Автоматически пересканирует ваши изменения и обновляет комментарии к вашему pull-requestу.
6. Проверьте рейтинги качества кода вашего репозитория
Любой пользователь с доступом на запись может просматривать общие оценки качества кода для репозитория, которые обобщают состояние надежности и удобства обслуживания кода в ветви по умолчанию.
Чтобы просмотреть рейтинги вашего репозитория, перейдите во Security and quality вкладку репозитория, разверните Качество кода страницу в боковой панели и нажмите Стандартные выводы.
Устраняя проблемы перед слиянием запросов на вытягивание, вы напрямую способствовали поддержанию этих оценок.
Дальнейшие шаги
- Рассмотрите результаты проверки качества кода в ветви по умолчанию и оцените надежность и удобство обслуживания репозитория. См . раздел AUTOTITLE.
- Оставляйте обратную GitHub Code Quality связь в обсуждении сообщества.