Skip to main content

코드 검색을 위한 설정 유형 정보

필요에 따라 GitHub는 code scanning에 대해 기본 설정 또는 고급 설정을 제공합니다.

이 문서의 내용

기본 설정 정보

code scanning의 기본 설정은 리포지토리에서 code scanning을(를) 활성화하는 가장 빠르고 쉽고 유지 관리 부담이 가장 적은 방법입니다. 리포지토리의 코드를 기반으로 기본 설정은 사용자 지정 code scanning 구성을 자동으로 만듭니다. 기본 설정을 활성화한 후, 저장소에 있는 CodeQL에서 지원되는 언어로 작성된 코드는 CodeQL을 사용하여 스캔됩니다.

  • 리포지토리의 기본 분기, 또는 보호된 모든 분기에 대한 각 푸시를 수행할 때. 보호된 분기에 대한 자세한 내용은 보호된 분기 정보에서 확인할 수 있습니다.
  • 포크의 끌어오기 요청을 제외하고, 리포지토리의 기본 분기 또는 보호된 모든 분기를 기반으로 하는 끌어오기 요청을 만들거나 커밋할 때.
  • 주간 일정에 따라.

code scanning 구성에 대해 더 세밀한 제어가 필요하면 대신 고급 설정을 구성해야 합니다.

지원되는 언어

나중에 리포지토리에 하나 이상의 CodeQL 지원 언어가 포함될 가능성이 있는 경우 적격 리포지토리에 대한 기본 설정을 사용하도록 설정하는 것이 좋습니다. CodeQL 지원 언어를 포함하지 않는 리포지토리에서 기본 설정을 사용하면 기본 설정에서 검사를 실행하거나 GitHub Actions분을 사용하지 않습니다. CodeQL 지원 언어가 리포지토리의 기본 분기에 추가되면 기본 설정에서 자동으로 CodeQL 지원 언어를 검사하고 GitHub Actions분을 사용하기 시작합니다. CodeQL 지원 언어에 대한 자세한 정보는 CodeQL을 사용하는 코드 검사 안내을(를) 참조하세요.

리포지토리의 코드가 CodeQL 지원 언어를 포함하도록 변경되면, GitHub은(는) 새 언어를 포함하도록 code scanning 구성을 자동으로 업데이트합니다. code scanning이 새 구성에서 실패하면, 리포지토리에서 code scanning 적용 범위가 손실되지 않도록 GitHub이 이전 구성을 자동으로 다시 사용합니다.

사용 가능한 실행

자체 호스팅 실행기 또는 GitHub 호스팅 실행기를 사용하면 CodeQL에서 지원하는 모든 언어에 대해 기본 설정을 활용할 수 있습니다.

실행기에 기본 code-scanning 레이블을 제공하여 기본 설정에 자체 호스팅 실행기를 할당할 수 있습니다. 필요에 따라 사용자 지정 레이블을 제공하여 개별 리포지토리에서 다른 실행기를 사용하도록 설정할 수도 있습니다.

고급 설정 정보

code scanning을(를) 사용자 지정해야 하는 경우, code scanning의 고급 설정이 유용합니다. GitHub Actions 또는 외부 CI/CD(지속적인 통합 또는 지속적인 공급/배포) 시스템을 사용하여 code scanning을 설정할 수 있습니다.

여러 구성을 사용하여 코드 검사를 실행할 때 경고의 분석 원본이 여러 개 있는 경우가 가끔 있습니다. 경고에 여러 분석 원본이 있는 경우 경고 페이지에서 각 분석 원본에 대한 경고 상태를 볼 수 있습니다. 자세한 내용은 코드 검사 경고 정보을(를) 참조하세요.

GitHub Actions을(를) 사용하여

GitHub Actions 워크플로 파일을 만들고 편집하면 컴파일된 언어를 빌드하고, 실행할 쿼리를 선택하고, 검사할 언어를 선택하고, 행렬 빌드를 사용하는 등의 방법을 정의할 수 있습니다. 워크플로를 제어하는 모든 옵션에도 액세스할 수 있습니다. 예를 들어: 검사 일정 변경, 워크플로 트리거 정의, 사용할 전문 실행기 지정.

사이트 관리자는 GitHub Connect를 설정하여 code scanning을 위해 타사 작업을 사용자가 사용할 수 있도록 만들 수도 있습니다. 자세한 내용은 어플라이언스에 대한 코드 스캐닝 구성을(를) 참조하세요.

타사 CI/CD 시스템 사용

GitHub 내에서 code scanning을 실행하는 대신 GitHub Actions를 사용하여 외부 CI/CD 시스템에서 코드를 분석한 다음 결과를 GitHub에 업로드할 수 있습니다.

CodeQL CLI은 코드 분석에 이용할 수 있는 독립 실행형 명령줄 도구입니다. CodeQL CLI를 제3자 시스템에 추가하거나, 결과를 정적 분석 결과 교환 형식 (SARIF) 2.1.0 데이터로 생성할 수 있는 다른 타사 정적 분석 도구를 사용할 수 있습니다. 자세한 내용은 CodeQL CLI에 대해코드 검사에 대한 SARIF 지원을(를) 참조하세요.

사용자가 외부에서 생성하는 code scanning에 대한 경고는 GitHub 내부에서 사용자가 생성하는 code scanning에 대한 경고와 동일하게 표시됩니다.

다음 단계

단일 리포지토리, 여러 리포지토리 또는 조직의 모든 리포지토리에 대한 기본 설정을 동시에 사용하도록 설정할 수 있습니다.

대신 고급 설정을 구성하려면 코드 검사에 대한 고급 설정 구성을 참조하세요.