기능

Code reviews

내장된 Review 워크플로우를 사용하여 IDE에서 직접 AI 기반 코드 리뷰를 받으세요. Bob이 변경 사항을 분석하고 작업을 커밋하기 전에 잠재적인 문제를 표시합니다.

코드 리뷰를 사용하는 이유

  • 조기 오류 감지: 커밋된 작업에 문제가 들어가기 전에 식별합니다.
  • 시간 절약: 잠재적인 리뷰어 댓글에 선제적으로 대응하여 PR 승인 시간을 줄입니다.
  • 코드 품질 향상: 더 나은 코딩 관행과 유지 관리성을 위한 제안을 받습니다.
  • 이슈 검증: 변경 사항이 이슈 요구 사항과 일치하는지 확인합니다 (GitHub 필요).

작동 방식

Review 워크플로우는 IDE 내에서 완전히 실행됩니다. Bob은 전용 Review 패널을 제공합니다. /review 명령으로 열 수 있습니다.

Bob은 선택한 브랜치 간의 diff를 검토한 다음 Bob Findings 패널에서 잠재적인 문제를 표시합니다. 선택적으로 GitHub 이슈를 포함하여 변경 사항이 요구 사항을 충족하는지 검증할 수 있습니다.

리뷰는 자동 승인으로 실행됩니다. Bob은 수동 확인 없이 모든 분석 단계를 진행합니다.

코드 리뷰하기

필수 조건

  • 비교하려는 로컬 또는 원격 브랜치에 대한 접근 권한.
  • 이슈 검증을 위해: GitHub 계정과 이슈 URL (이슈 관련 기능에는 GitHub 필요).
참고:

Bob은 브랜치 비교를 위해 GitHub 및 GitLab과 함께 작동할 수 있습니다. 그러나 이슈 검증에는 GitHub가 필요합니다.

리뷰 시작하기

/review 명령 또는 Review 패널 아이콘을 사용하여 사이드바에서 Bob Review 패널을 엽니다. 패널은 리뷰를 구성하고 시작하기 위한 시각적 인터페이스를 제공합니다.

브랜치 드롭다운에서 비교할 브랜치를 선택합니다. 현재 브랜치, 로컬 브랜치, 원격 브랜치 또는 리포지토리의 기본 브랜치와 비교할 수 있습니다.

아직 커밋되지 않은 로컬 수정 사항을 포함하려면 미커밋 변경 사항 포함을 토글합니다.

선택적으로, 이슈 목록에서 GitHub 이슈를 선택하여 변경 사항이 요구 사항을 충족하는지 검증합니다.

리뷰 시작을 클릭하여 시작합니다.

Bob이 변경 사항을 검토하고 Bob Findings 패널에 결과를 표시합니다.

리뷰 옵션

비교 브랜치 선택

브랜치 드롭다운 선택기에 표시되는 항목:

  • 현재 브랜치: 활성 브랜치.
  • 기본 브랜치: 리포지토리의 기본 브랜치 (배지로 표시).
  • 원격 브랜치: 원격 리포지토리의 브랜치 (배지로 표시).
  • 로컬 브랜치: 다른 로컬 브랜치 (배지로 표시).

원격 main과 로컬 main, 현재 브랜치와 다른 브랜치, 또는 refs의 어떤 조합이든 비교할 수 있습니다.

미커밋 변경 사항 표시

미커밋 변경 사항 포함 체크박스를 활성화하여 커밋되지 않은 로컬 수정 사항을 리뷰에 포함합니다. 이 옵션은 현재 브랜치를 리뷰할 때 자동으로 활성화됩니다.

리뷰 제외 구성

코드 리뷰에서 특정 파일 또는 패턴을 제외할 수 있습니다:

Bob 설정을 엽니다.

Bob Findings 탭으로 이동합니다.

Review Exclusions 아래에서 제외할 파일의 glob 패턴을 추가합니다 (예: .vscode/**, *.test.ts).

제외된 파일은 리뷰 패널의 파일 목록에 표시되지 않으며 리뷰 중에 분석되지 않습니다.

Bob Findings 사용하기

Bob이 리뷰를 완료하면 결과가 Bob Findings 패널에 표시됩니다. 이 결과와 여러 방법으로 상호 작용할 수 있습니다:

결과 보기

  • Bob Findings 패널에서 결과를 클릭하여 전체 세부 정보를 확인합니다.
  • 채팅 인터페이스 컨텍스트 드롭다운 메뉴에서 @issues를 사용하여 대화에서 결과를 참조합니다.
  • 결과를 클릭하여 파일로 이동하고 인라인 주석이 있는 컨텍스트에서 코드를 확인합니다.

컨텍스트 멘션에 대한 자세한 내용은 컨텍스트 멘션을 참조하세요.

결과에 대한 조치

각 결과는 다음 작업을 제공합니다:

  • Bob으로 수정: Bob에게 문제를 자동으로 수정하도록 요청합니다. Bob이 결과를 해결하기 위한 작업을 생성합니다.
  • 무시: 관련이 없는 경우 패널에서 결과를 제거합니다.

팁 및 모범 사례

  • 수동 리뷰와 결합: 사람이 하는 코드 리뷰 전에 Bob의 자동화된 리뷰를 첫 번째 단계로 사용합니다.
  • 이슈 커버리지 검증: pull request를 만들기 전에 변경 사항이 요구 사항을 완전히 충족하는지 확인하기 위해 GitHub 이슈를 포함합니다.
  • 제외 구성: 리뷰가 필요 없는 테스트 파일, 생성된 코드 또는 구성 파일을 제외합니다.
  • 원격 브랜치와 비교: 브랜치 선택기를 사용하여 최신 원격 변경 사항과 비교하여 작업을 리뷰합니다.
이 주제는 어떤가요?