# Анализ качества кода на основе CodeQL

Информация о том, как работает анализ Code Quality на базе CodeQL, используемый рабочий процесс и о статусах, отражаемых в pull requests.

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

##

```
          CodeQL-Анализ на мощности

          Code Quality используется CodeQL для анализа пулл-запросов и вашей ветки по умолчанию на основе правил.
```

* Результаты для вашей **стандартной ветки** отображаются в панели управления "Стандартные выводы" во вкладке вашего репозитория **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-shield" aria-label="shield" role="img"><path d="M7.467.133a1.748 1.748 0 0 1 1.066 0l5.25 1.68A1.75 1.75 0 0 1 15 3.48V7c0 1.566-.32 3.182-1.303 4.682-.983 1.498-2.585 2.813-5.032 3.855a1.697 1.697 0 0 1-1.33 0c-2.447-1.042-4.049-2.357-5.032-3.855C1.32 10.182 1 8.566 1 7V3.48a1.75 1.75 0 0 1 1.217-1.667Zm.61 1.429a.25.25 0 0 0-.153 0l-5.25 1.68a.25.25 0 0 0-.174.238V7c0 1.358.275 2.666 1.057 3.86.784 1.194 2.121 2.34 4.366 3.297a.196.196 0 0 0 .154 0c2.245-.956 3.582-2.104 4.366-3.298C13.225 9.666 13.5 8.36 13.5 7V3.48a.251.251 0 0 0-.174-.237l-5.25-1.68ZM8.75 4.75v3a.75.75 0 0 1-1.5 0v-3a.75.75 0 0 1 1.5 0ZM9 10.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></svg> Security and quality** .

* Результаты **по pull requests** отображаются в виде комментариев, сделанных `github-code-quality[бот]`.

  ```
          Copilot Autofix По возможности предоставляются предложения по выводам.
  ```

### Списки запросов для поддерживаемых языков

Каждое Code Quality правило записывается как запрос в CodeQL , а затем выполняется с помощью GitHub Actions.

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

* ```
          [AUTOTITLE](/code-security/code-quality/reference/codeql-queries/csharp-queries)
  ```
* ```
          [AUTOTITLE](/code-security/code-quality/reference/codeql-queries/go-queries)
  ```
* ```
          [AUTOTITLE](/code-security/code-quality/reference/codeql-queries/java-queries)
  ```
* ```
          [AUTOTITLE](/code-security/code-quality/reference/codeql-queries/javascript-queries)
  ```
* ```
          [AUTOTITLE](/code-security/code-quality/reference/codeql-queries/python-queries)
  ```
* ```
          [AUTOTITLE](/code-security/code-quality/reference/codeql-queries/ruby-queries)
  ```

Для получения дополнительной информации о CodeQL проекте см. <https://codeql.github.com/>.

## Рабочий процесс, используемый для анализа качества кода

Вы можете посмотреть все запуски Code Quality рабочих процессов на **вкладке «Действия** » вашего репозитория. Динамический рабочий процесс называется «Качество кода».

По умолчанию Качество кода рабочий процесс работает на стандартных GitHub раннерах, но можно настроить Code Quality их с определённой меткой. Они могут быть размещены GitHub или размещены самостоятельно.

Если в организации настроено кэширование частных реестров, они будут доступны для анализа качества кода для разрешения зависимостей.

Дополнительные сведения можно найти здесь

* ```
          [AUTOTITLE](/code-security/code-quality/how-tos/enable-code-quality)
  ```
* ```
          [AUTOTITLE](/code-security/securing-your-organization/enabling-security-features-in-your-organization/giving-org-access-private-registries#code-quality-access-to-private-registries)
  ```

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

Когда анализ качества кода выполняется на pull request, проверка «CodeQL - Качество кода / Analyze» отображается в разделе «Checks» внизу pull request.

О любых проблемах с кодом, обнаруженных в ходе сканирования, сообщается в комментариях к запросу на вытягивание. Комментарий сделан и `github-code-quality[бот]` содержит Copilot Autofix предложение.

### Сбои проверки состояния

Рабочий процесс не удалось запустить. Например, у вас исчерпан бюджет на минуты действий.
[Для диагностики сбоев см. раздел Просмотр журналов](/ru/enterprise-cloud@latest/actions/how-tos/monitor-workflows/use-workflow-run-logs#viewing-logs-to-diagnose-failures).

### Слияние заблокировано: обнаружены результаты проверки качества кода

В ходе сканирования были обнаружены проблемы в коде, которые превышают шлюз качества, установленный правилом ветвления качества кода для репозитория. Необходимо устранить эти проблемы, прежде чем можно будет объединить запрос на вытягивание. См [. раздел AUTOTITLE](/ru/enterprise-cloud@latest/code-security/code-quality/how-tos/unblock-your-pr).