Skip to main content

GitHub 코드 품질

GitHub Code Quality 병합 전에 품질 문제를 포착하고, 원클릭 Copilot 기반 수정 사항을 인라인으로 제공하며, 코드 커버리지를 확인합니다.

누가 이 기능을 사용할 수 있나요?

GitHub Team 또는 GitHub Enterprise Cloud

GitHub Code Quality는 코드의 품질 및 커버리지 문제를 분석하고 클릭 한 번으로 적용할 수 있는 Copilot 기반 수정 사항을 제공합니다. 다음 두 위치에서 실행됩니다.

  • 끌어오기 요청에서 결과는 코드가 병합되기 전에 인라인 주석으로 표시됩니다. Cobertura XML 검사 보고서를 업로드하는 경우 검사 메트릭은 변경 내용이 적용 범위를 유지하거나 줄이는지 여부를 표시합니다. 규칙 집합을 사용하여 품질 및 적용 범위 임계값을 적용하여 기준을 충족하지 않는 끌어오기 요청을 차단할 수 있으므로 새로운 품질 부채가 누적되지 않습니다.
  • 기본 브랜치에서 스캔은 코드베이스 전체에 존재하는 품질 부채를 식별하며, 직접 적용하거나 Copilot 클라우드 에이전트에 할당해 대신 해결할 수 있는 자동 수정 기능도 제공합니다.

검색은 알려진 안티패턴에 대한 결정적 CodeQL 규칙을 AI 기반 분석과 결합하여 쿼리에서 아직 다루지 CodeQL 않는 언어를 포함하여 기존 규칙 집합을 벗어난 문제에 대해 분석합니다.

사용 사례

GitHub Code Quality 실제로는 다음과 같습니다.

개발자 및 팀의 경우:

  • 개발자가 안정성 또는 유지 관리 가능성 문제를 도입하는 끌어오기 요청을 엽니다. Code Quality 는 문제를 설명하는 댓글을 게시하고 코드를 병합하기 전에 원클릭 수정을 제공합니다. 또한 개발자는 검사 메트릭에 대한 보고서를 보고 끌어오기 요청이 기본 분기에 비해 적용 범위를 개선하거나 줄이는지 한눈에 알 수 있습니다.
  • 팀은 AI 코딩 도우미를 채택 하고 생성된 코드가 손으로 쓴 코드와 동일한 막대를 충족하는지 보증해야 합니다. AI 기반 분석은 규칙 기반 쿼리가 작성되지 않은 문제를 포착하는 반면 CodeQL 규칙은 잘 정의된 안티패턴을 다룹니다.
  • 팀은 수년간 누적된 품질 부채를 가진 대규모 코드베이스를 상속받습니다. Code Quality는 기본 브랜치를 검사하고 자동 수정이 가능한 결과를 대시보드에 표시하며, 팀은 수정 작업을 Copilot 클라우드 에이전트에 할당해 수정 PR을 자동으로 생성하도록 합니다.

관리자 및 리드용:

  • 엔지니어링 리더는 규칙 집합을 사용하여 적용 범위 및 품질 임계값을 설정합니다 . 조건을 충족하지 않는 끌어오기 요청은 병합에서 차단되므로 새로운 품질이나 보장 부채가 누적되지 않습니다.
  • 관리자는 감사 또는 규정 준수 보고를 위해 리포지토리 전체에서 가시성이 필요합니다. Code Quality 보안 도구와 함께 보안 개요를 통해 보고하므로 조직 전체의 품질 상태를 한눈에 확인하고, 주의가 필요한 리포지토리를 식별하고, 표준 GitHub 감사 제어 및 정책을 사용하여 개선 메트릭을 추적할 수 있습니다.

가용성 및 청구

사용 비용은 다음을 통해 결정됩니다.

  • 활성 커밋자에 따른 사용자별 라이선스 요금입니다.
  • AI 기반 탐지 및 Copilot 기반 자동 수정으로, GitHub AI Credits을 사용합니다(Copilot 라이선스 필요 없음).
  • GitHub Actions 자체 호스팅 실행기를 사용하지 않는 경우 결정적 CodeQL 검사에 대한 분입니다.

코드 품질 수정 작업 Copilot위임과 같은 선택적 기능에는 라이선스가 Copilot 필요합니다.

자세한 내용은 GitHub Code Quality 청구을(를) 참조하세요.

지원되는 언어

Code Quality는 CodeQL을 사용하여 다음 언어에 대한 규칙 기반 분석을 수행합니다.

  • C#
  • Go
  • Java
  • JavaScript
  • 파이썬
  • 루비
  • TypeScript

또한 규칙 기반 쿼리에서 지원하는 언어 이외의 언어를 포함하여 끌어오기 요청 및 리포지토리의 최근 변경된 코드에 대한 AI 기반 분석을 수행합니다.

다음 단계