참고
GitHub Code Quality은(는) 현재 공개 미리 보기에 있으며 변경될 수 있습니다. 공개 미리 보기에서 Code Quality은(는) 요금이 청구되지 않지만 Code Quality 스캔은 GitHub Actions 분을 소모합니다.
소개
본 튜토리얼은 변경 사항으로 인해 실수로 발생할 수 있는 코드 품질 문제를 식별하기 위해 풀 요청 시 GitHub Code Quality를 이용하는 방법을 보여주고, Copilot 자동 수정 및 Copilot 코딩 도우미를 사용하여 코드 품질 문제를 해결하는 방법을 안내합니다.
문제를 조기에 catch할 경우의 이점
코드 품질 문제를 조기에 발견하면 팀의 코드베이스를 잘 유지할 수 있습니다. GitHub Code Quality 코드에서 다음을 확인합니다.
-
**안정성**: 예를 들어 논리 오류, 안전하지 않은 오류 처리 또는 앱이 충돌하거나 예측 불가능한 동작을 일으킬 수 있는 경합 조건을 포함합니다. 이러한 유형의 문제를 조기에 해결하면 소프트웨어를 더욱 강력하고 신뢰할 수 있게 만들 수 있습니다. -
**유지 관리:** 예를 들어 중복된 코드, 지나치게 복잡한 논리, 사용되지 않는 변수 또는 코딩 모범 사례 위반입니다. 이러한 문제를 해결하면 코드를 더 쉽고 쉽게 읽을 수 있으므로 향후 변경 내용이 더 빠르고 위험하지 않습니다.
1. GitHub Code Quality가 풀 요청에 어떻게 작동하는지 이해합니다.
풀 요청을 열면 GitHub Code Quality는 CodeQL를 사용하여 사용자의 변경 내용에서 위와 같은 품질 문제를 자동으로 스캔합니다.
CodeQL 스캔 결과는 풀 요청에 대한 주석으로 기록되며, github-code-quality[bot]에서 기록을 남깁니다. 각 주석은 변경 내용에서 발견된 특정 코드 품질 문제에 해당하며 제안된 자동 수정과 함께 제공됩니다.
주석은 심각도(오류, 경고, 참고)로 레이블이 지정되므로 가장 중요한 결과를 확인할 수 있습니다.
2. 심각도에 따라 수정의 우선 순위 지정
주석을 검색하고 심각도가 가장 높은 결과("오류")를 먼저 식별합니다.
"오류" 결과가 없는 경우 다음 심각도 수준("경고")의 결과를 찾습니다.
심각도가 높은 결과는 코드베이스에 안정성 또는 유지 관리 문제를 발생시킬 가능성이 더 높은 더 심각한 코드 품질 문제를 나타냅니다. 심각도가 높은 결과를 해결하면 팀 코드의 품질을 유지하기 위해 가장 영향력 있는 작업을 수행하게 됩니다.
참고
리포지토리 관리자가 코드 품질 게이트를 설정한 경우, 특정 심각도 이상의 Code Quality 결과가 포함된 풀 리퀘스트에서는 병합이 차단될 수 있습니다. 끌어오기 요청에서 블록 해결을(를) 참조하세요.
3. Copilot 자동 수정나 Copilot 코딩 도우미를 이용해 문제의 결과를 수정합니다.
Copilot 자동 수정
풀 리퀘스트에 대한 코멘트에는 풀 리퀘스트에 직접 커밋할 수 있는 제안된 자동 수정이 포함됩니다. 논리, 보안 및 스타일에 대해 제안된 자동 수정을 신중하게 검토한 다음 제안 적용을 클릭합니다.
이러한 제안을 적용하는 데는 Copilot 라이선스가 필요 없습니다.
Copilot 코딩 도우미
또는 Copilot 라이선스가 있는 경우 수정 작업을 Copilot 코딩 도우미에 위임할 수 있습니다. 풀 리퀘스트에 @Copilot을(를) 언급하는 주석을 달고, Copilot이 감지된 문제를 해결해달라고 요청합니다.

Copilot는 댓글에 눈 이모티콘(👀)으로 응답한 후, 새 에이전트 세션을 시작하고 필요한 수정 사항이 포함된 끌어오기 요청을 엽니다.
Copilot 코딩 도우미의 작업을 추적할 수 있습니다.
- 끌어오기 요청에서 작업이 진행됨에 따라 요약이 업데이트됩니다.
-
[에이전트 페이지](https://github.com/copilot/agents?ref_product=copilot&ref_type=engagement&ref_style=text) 또는 세션 로그를 사용하여 [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/track-copilot-sessions)을 참조하세요.
Copilot 라이선스를 사용하여 Copilot 코딩 도우미을(를) 호출해야 합니다.
Copilot에 등록
4. 관련 없는 조사 결과 해제
다시 사용 가능한 코드 품질. 관련 없는 결과 무시 %}
5. 변경 내용을 푸시하고 검사를 기다립니다.
결과를 수정하거나 해제한 후 끌어오기 요청과 연결된 분기에 변경 내용을 푸시합니다. GitHub Code Quality는 변경 내용을 자동으로 다시 검사하고 pull request에 대한 코멘트를 업데이트합니다.
6. 리포지토리의 코드 품질 등급 확인
쓰기 액세스 권한이 있는 사용자는 리포지토리에 대한 전체 코드 품질 등급을 볼 수 있으며, 기본 분기에서 코드의 안정성 및 유지 관리 가능성을 요약합니다.
리포지토리의 등급을 보려면 리포지토리의 보안 탭으로 이동하고 사이드바에서 코드 품질 를 확장한 다음 표준 결과 를 클릭합니다.
끌어오기 요청을 병합하기 전에 문제를 해결함으로써 이러한 등급을 유지하는 데 직접 기여했습니다.
다음 단계
- 기본 분기의 코드 품질 결과를 해결하고 리포지토리의 안정성 및 유지 관리 등급에 대해 이해합니다. 리포지토리 코드의 품질 향상을(를) 참조하세요.
-
[커뮤니티 토론](https://github.com/orgs/community/discussions/177488)에서 GitHub Code Quality와 관련해 피드백을 제공하세요.