# Краткое руководство по GitHub Code Quality

Проверьте результаты по качеству кода, сгенерируйте Copilot Autofixзапрос и объедините pull request для повышения надёжности и поддерживаемости с GitHub Code Quality.

## Введение

```
          GitHub Code Quality (public preview) помогает поддерживать ваш код надёжным и поддерживаемым, показывая данные о качестве кода в pull requests и на вашем стандартном ветке.
```

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

### Предпосылки

* ```
          GitHub Code Quality должно быть включено в вашем репозитории, и код должен быть на поддерживаемом языке. См [. раздел AUTOTITLE](/code-security/code-quality/how-tos/enable-code-quality).
  ```
* Если вы включаете GitHub 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** вкладку, кликните **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-code-review" aria-label="code review" role="img"><path d="M1.75 1h12.5c.966 0 1.75.784 1.75 1.75v8.5A1.75 1.75 0 0 1 14.25 13H8.061l-2.574 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25v-8.5C0 1.784.784 1 1.75 1ZM1.5 2.75v8.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-8.5a.25.25 0 0 0-.25-.25H1.75a.25.25 0 0 0-.25.25Zm5.28 1.72a.75.75 0 0 1 0 1.06L5.31 7l1.47 1.47a.751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018l-2-2a.75.75 0 0 1 0-1.06l2-2a.75.75 0 0 1 1.06 0Zm2.44 0a.75.75 0 0 1 1.06 0l2 2a.75.75 0 0 1 0 1.06l-2 2a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L10.69 7 9.22 5.53a.75.75 0 0 1 0-1.06Z"></path></svg> Качество кода** в левой боковой панели, затем открыть **Стандартные выводы** дашборд репозитория.

Здесь вы увидите:

* ```
          **Оценки надежности** и **удобства обслуживания** базы кода, которые помогают быстро понять работоспособность кода.
  ```
* ```
          **Список результатов** всех проблем с качеством, выявленных CodeQLанализом -powered на вашей стандартной ветке, сгруппированных по правилам и языкам.
  ```

  ![Скриншот оценок качества кода в виде "Стандартные выводы" для Code Quality.](/assets/images/help/code-quality/all-findings-overview-repo.png)

## Определите обнаружение, имеющее большое значение

Используйте **фильтры панели мониторинга** , чтобы определить высокий уровень серьезности («Ошибка» или «Предупреждение»).

Устранение этих проблем окажет наибольшее влияние на рейтинги репозитория.

![Скриншот, показывающий фильтры панели мониторинга для представления "Стандартные выводы".](/assets/images/help/code-quality/standard-findings-filters.png)

### Изучите детали находки

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

![Скриншот, показывающий правило в виде "Стандартные выводы". Название правила выделено темно-оранжевым цветом.](/assets/images/help/code-quality/click-rule-name.png)

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

![Скриншот результатов для правила "Перезаписанное свойство". Текст «Показать еще» выделен темно-оранжевым цветом.](/assets/images/help/code-quality/click-show-more.png)

## Сгенерировать Copilot Autofix

Справа от выделенной находки нажмите **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-copilot" aria-label="copilot" role="img"><path d="M7.998 15.035c-4.562 0-7.873-2.914-7.998-3.749V9.338c.085-.628.677-1.686 1.588-2.065.013-.07.024-.143.036-.218.029-.183.06-.384.126-.612-.201-.508-.254-1.084-.254-1.656 0-.87.128-1.769.693-2.484.579-.733 1.494-1.124 2.724-1.261 1.206-.134 2.262.034 2.944.765.05.053.096.108.139.165.044-.057.094-.112.143-.165.682-.731 1.738-.899 2.944-.765 1.23.137 2.145.528 2.724 1.261.566.715.693 1.614.693 2.484 0 .572-.053 1.148-.254 1.656.066.228.098.429.126.612.012.076.024.148.037.218.924.385 1.522 1.471 1.591 2.095v1.872c0 .766-3.351 3.795-8.002 3.795Zm0-1.485c2.28 0 4.584-1.11 5.002-1.433V7.862l-.023-.116c-.49.21-1.075.291-1.727.291-1.146 0-2.059-.327-2.71-.991A3.222 3.222 0 0 1 8 6.303a3.24 3.24 0 0 1-.544.743c-.65.664-1.563.991-2.71.991-.652 0-1.236-.081-1.727-.291l-.023.116v4.255c.419.323 2.722 1.433 5.002 1.433ZM6.762 2.83c-.193-.206-.637-.413-1.682-.297-1.019.113-1.479.404-1.713.7-.247.312-.369.789-.369 1.554 0 .793.129 1.171.308 1.371.162.181.519.379 1.442.379.853 0 1.339-.235 1.638-.54.315-.322.527-.827.617-1.553.117-.935-.037-1.395-.241-1.614Zm4.155-.297c-1.044-.116-1.488.091-1.681.297-.204.219-.359.679-.242 1.614.091.726.303 1.231.618 1.553.299.305.784.54 1.638.54.922 0 1.28-.198 1.442-.379.179-.2.308-.578.308-1.371 0-.765-.123-1.242-.37-1.554-.233-.296-.693-.587-1.713-.7Z"></path><path d="M6.25 9.037a.75.75 0 0 1 .75.75v1.501a.75.75 0 0 1-1.5 0V9.787a.75.75 0 0 1 .75-.75Zm4.25.75v1.501a.75.75 0 0 1-1.5 0V9.787a.75.75 0 0 1 1.5 0Z"></path></svg> Generate fix**.

![Скриншот кнопки "Generate fix".](/assets/images/help/code-quality/generate-fix.png)

Просмотрите предложенное исправление и нажмите **Открыть запрос на вытягивание**.

### Слияние исправления

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

## Наблюдайте за изменением метрик

Вернёмся на Code Quality панель управления (**<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** вкладка, **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-code-review" aria-label="code review" role="img"><path d="M1.75 1h12.5c.966 0 1.75.784 1.75 1.75v8.5A1.75 1.75 0 0 1 14.25 13H8.061l-2.574 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25v-8.5C0 1.784.784 1 1.75 1ZM1.5 2.75v8.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-8.5a.25.25 0 0 0-.25-.25H1.75a.25.25 0 0 0-.25.25Zm5.28 1.72a.75.75 0 0 1 0 1.06L5.31 7l1.47 1.47a.751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018l-2-2a.75.75 0 0 1 0-1.06l2-2a.75.75 0 0 1 1.06 0Zm2.44 0a.75.75 0 0 1 1.06 0l2 2a.75.75 0 0 1 0 1.06l-2 2a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L10.69 7 9.22 5.53a.75.75 0 0 1 0-1.06Z"></path></svg> Качество кода** затем , затем **Стандартные выводы**).

Подождите несколько минут, пока следующее сканирование завершится — Code Quality сканы автоматически повторяются после каждого перехода на стандартную ветку.

Следите за изменением метрик в верхней части панели мониторинга:

* ```
          **Количество выводов** по «Надежности» или «Ремонтопригодности» должно было уменьшиться.
  ```
* Ваши **оценки** «Надежность» или «Ремонтопригодность» могли улучшиться, если в исправлении был учтен ряд важных выводов.

  Чтобы узнать больше о том, как рассчитываются рейтинги, см. [Справочник по метрикам и рейтингам](/ru/enterprise-cloud@latest/code-security/code-quality/reference/metrics-and-ratings).

## Conclusion

Вы успешно использовали Code Quality и Copilot Autofix улучшили здоровье кода вашего репозитория!

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

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

* Узнайте, как GitHub Code Quality работают pull requests, чтобы предотвратить попадание проблем с качеством кода на вашу стандартную ветку. См [. раздел AUTOTITLE](/ru/enterprise-cloud@latest/code-security/code-quality/tutorials/fix-findings-in-prs).
* Оставляйте обратную GitHub Code Quality связь в [обсуждении сообщества](https://github.com/orgs/community/discussions/177488).