Skip to main content

Resolving a block on your pull request

Identify and resolve a code quality block on your pull request so you can merge your changes.

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

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

Примечание.

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

Understanding why your pull request is blocked

Repository administrators can set code quality gates for maintainability and reliability using GitHub Code Quality. When you open a pull request, a scan automatically runs to check your changes against these standards.

If your pull request introduces code that falls below the required quality threshold, you’ll see a merge block banner at the bottom of the pull request in the Checks section: "Merging is blocked: Code quality findings were detected."

Screenshot of the merge block banner in the Checks section of a pull request.

These checks help maintain a healthy, maintainable codebase and prevent technical debt from accumulating.

Viewing scan results and their severity levels

The results of the scan are reported as comments on your pull request, left by the github-code-quality[бот]. Each comment corresponds to a specific code quality problem that was detected in your changes.

Comments are labeled by severity (Error, Warning, Note). To learn more about what the severity levels mean, see Severity levels.

Determining which findings are blocking your pull request

The quality gate set by repository administrators defines the minimum severity level that will block merging.

The merge block banner may specify the minimum severity level. All findings at that severity level or higher must be addressed before you can merge your pull request.

Screenshot of the merge block banner in the Checks section of a pull request.

Примечание.

If you don't see a severity level defined in the merge block banner, it means that your repository is using the most stringent code quality thresholds, which require all findings to be addressed before merging.

Fixing or dismissing each finding

In order to unblock your pull request, you need to resolve each required finding by deciding whether to fix the issue in your code or dismiss the comment.

Leveraging Автофикс второго пилота and Агент кодирования Copilot to fix findings

Автофикс второго пилота

Комментарии к запросу pull включают предлагаемое автоисправление , которое вы можете зафиксировать непосредственно в своем запросе pull. Внимательно изучите предложенное автоисправление на предмет логики, безопасности и стиля, затем нажмите «Предложить фиксацию».

Вам не нужна лицензия Copilot, чтобы применить эти предложения.

Агент кодирования Copilot

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

Скриншот с комментарием PR, который вызвал агент кодирования Copilot.

Copilot отвечает эмодзи глаз (👀) на ваш комментарий, запускает новую сессию агента и открывает запрос на вытягивание с необходимыми исправлениями.

Вы можете отслеживать для вызова Агент кодирования Copilot.
Зарегистрируйтесь для Copilot

Dismissing the finding

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

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

Отклонение неактуальных оповещений позволяет вашим проверкам качества сосредоточиться на значимых проблемах.

Verifying that you've met the requirements

To see if you've met the code quality requirements, look at the "Checks" section at the bottom of your pull request. The merge block banner should no longer be present, and you should be able to merge your changes as usual.

Next steps

Reduce technical debt by fixing findings in recently changed files. See Improving the quality of recently merged code with AI.