코드베이스 검색

컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
문제 신고 출처 보기

제품 개요

Bazel의 코드 검색 및 소스 탐색 인터페이스는 Bazel 소스 코드 저장소를 찾아보기 위한 웹 기반 도구입니다. 이러한 기능을 사용하여 여러 저장소, 브랜치, 파일 간에 이동할 수 있습니다. 기록, 차이점, 원인이 된 정보를 확인할 수도 있습니다.

시작하기

코드 검색 및 소스 탐색 인터페이스에 액세스하려면 웹브라우저에서 https://source.bazel.build를 엽니다.

기본 화면이 표시됩니다. 이 화면에는 다음 구성요소가 포함되어 있습니다.

  1. 탐색경로 툴바 이 툴바에는 저장소 내 현재 위치가 표시되며 이 툴바를 사용하여 다른 저장소나 파일, 브랜치, 커밋과 같은 저장소 내의 다른 위치로 신속하게 이동할 수 있습니다.

  2. 둘러볼 수 있는 저장소 목록입니다.

화면 상단에는 검색창이 있습니다. 이 상자를 사용하여 특정 파일과 코드를 검색할 수 있습니다.

저장소 작업

저장소 열기

저장소를 열려면 기본 화면에서 이름을 클릭합니다.

또는 탐색경로 툴바를 사용하여 특정 저장소를 탐색할 수 있습니다. 이 툴바에는 저장소 내 현재 위치가 표시되며 이 툴바를 사용하여 다른 저장소나 파일, 브랜치, 커밋과 같은 저장소 내의 다른 위치로 신속하게 이동할 수 있습니다.

저장소 전환

다른 저장소로 전환하려면 탐색경로 툴바에서 해당 저장소를 선택하세요.

특정 커밋에서 저장소 보기

특정 커밋에서 저장소를 보려면 다음 안내를 따르세요.

  1. 저장소 뷰에서 파일을 선택합니다.
  2. 탐색경로 툴바에서 분기 메뉴를 엽니다.
  3. 표시되는 하위 메뉴에서 커밋을 클릭합니다.
  4. 보려는 커밋을 선택합니다.

이제 해당 커밋에 있는 저장소가 인터페이스에 표시됩니다.

분기, 커밋 또는 태그 열기

기본적으로 코드 검색 및 소스 탐색 인터페이스는 기본 분기에 대한 저장소를 엽니다. 다른 브랜치를 열려면 탐색경로 툴바에서 브랜치/커밋/태그 메뉴를 클릭합니다. 브랜치 이름, 태그 이름 또는 검색창을 사용하여 브랜치를 선택할 수 있는 하위 메뉴가 열립니다.

  • 브랜치 이름을 사용하여 브랜치를 선택하려면 브랜치를 선택한 후 브랜치 이름을 클릭합니다.
  • 태그 이름을 사용하여 분기를 선택하려면 태그를 선택한 후 태그 이름을 클릭합니다.
  • 커밋 ID를 사용하여 브랜치를 선택하려면 커밋을 선택한 후 커밋 ID를 클릭합니다.
  • 브랜치, 커밋, 태그를 검색하려면 해당 항목을 선택하고 검색창에 검색어를 입력합니다.

파일 작업

기본 화면에서 저장소를 선택하면 화면이 변경되어 해당 저장소의 뷰가 표시됩니다. README 파일이 있으면 화면의 오른쪽에 있는 파일 창에 콘텐츠가 표시됩니다. 그렇지 않으면 저장소의 파일 및 폴더 목록이 표시됩니다. 화면 왼쪽에는 저장소의 파일 및 폴더의 트리 뷰가 있습니다. 이 트리를 사용하여 특정 파일을 탐색하고 열 수 있습니다.

저장소를 볼 때 현재 탐색경로 툴바에는 세 가지 구성요소가 있습니다.

  • 다른 저장소를 선택할 수 있는 저장소 메뉴
  • 브랜치/커밋/태그 메뉴: 특정 브랜치, 태그 또는 커밋을 선택할 수 있습니다.
  • 파일 경로 상자: 현재 파일 또는 폴더의 이름과 해당 경로를 표시합니다.

파일 열기

해당 디렉터리를 탐색하고 선택하여 파일을 열 수 있습니다. 저장소 뷰가 업데이트되어 파일 창에 있는 파일의 콘텐츠와 트리 창의 저장소에 있는 위치가 표시됩니다.

파일 변경사항 보기

파일 변경사항을 보려면 다음 단계를 따르세요.

  1. 저장소 뷰에서 파일을 선택합니다.
  2. 오른쪽 상단 모서리에 있는 BLAME(원인)을 클릭합니다.

파일을 변경한 사용자 및 시기를 표시하도록 파일 창이 업데이트됩니다.

변경 내역 보기

파일의 변경 내역을 보는 방법은 다음과 같습니다.

  1. 저장소 뷰에서 파일을 선택합니다.
  2. 오른쪽 상단에 있는 내역을 클릭합니다. Change history 창이 나타나고 이 파일의 커밋이 표시됩니다.

코드 검토 보기

Gerrit 코드 검토의 경우 변경 내역 창에서 직접 도구를 열 수 있습니다.

파일의 코드 검토를 보려면 다음 단계를 따르세요.

  1. 저장소 뷰에서 파일을 선택합니다.
  2. 오른쪽 상단에 있는 내역을 클릭합니다. 변경 내역 창이 표시되고 이 파일의 커밋이 표시됩니다.
  3. 커밋 위로 마우스를 가져갑니다. 더보기 버튼 (세로로 된 3개의 점)이 표시됩니다.
  4. 더보기 버튼을 클릭합니다.
  5. 코드 검토 보기를 선택합니다.

Gerrit Code Review 도구가 새 브라우저 창에서 열립니다.

특정 커밋에서 파일 열기

특정 커밋에서 파일을 열려면 다음 안내를 따르세요.

  1. 저장소 뷰에서 파일을 선택합니다.
  2. 오른쪽 상단에 있는 내역을 클릭합니다. 변경 내역 창이 표시되고 이 파일의 커밋이 표시됩니다.
  3. 커밋 위로 마우스를 가져갑니다. 보기 버튼이 나타납니다.
  4. 보기 버튼을 클릭합니다.

파일을 다른 커밋과 비교하기

다른 커밋의 파일을 비교하는 방법은 다음과 같습니다.

  1. 저장소 뷰에서 파일을 선택합니다. 두 가지 커밋에서 비교하려면 먼저 해당 커밋에서 파일을 엽니다.
  2. 커밋 위로 마우스를 가져갑니다. 차이 버튼이 나타납니다.
  3. 차이 버튼을 클릭합니다.

파일 창이 업데이트되어 두 파일을 나란히 비교할 수 있습니다. 두 커밋 중 가장 오래된 커밋은 항상 왼쪽에 있습니다.

변경 내역 창에서 두 커밋이 모두 강조표시되며 커밋이 왼쪽 또는 오른쪽에 표시되는지 여부가 라벨로 표시됩니다.

두 파일 중 하나를 변경하려면 변경 내역 창에서 커밋 위로 마우스를 가져갑니다. 그런 다음 왼쪽 또는 오른쪽 버튼을 클릭하여 diff의 왼쪽이나 오른쪽에 커밋을 엽니다.

상호 참조 탐색

소스 저장소를 탐색하는 또 다른 방법은 교차 참조를 사용하는 것입니다. 이러한 참조는 지정된 소스 파일 내에서 자동으로 하이퍼링크로 표시됩니다.

상호 참조를 더 쉽게 식별하려면 오른쪽 상단에 있는 교차 참조를 클릭하세요. 이 옵션은 파일의 모든 상호 참조 아래에 밑줄을 표시합니다.

참고: 교차 참조가 비활성화된 경우 해당 파일에서 상호 참조를 사용할 수 없습니다.

상호 참조를 클릭하여 상호 참조 창을 엽니다. 이 창에는 다음 두 가지 섹션이 있습니다.

  • 참조를 정의하는 파일이 나열된 정의 섹션
  • 참조가 표시되는 파일 목록을 보여주는 References 섹션

두 섹션에는 파일 이름과 참조가 포함된 줄이 표시됩니다. 상호 참조 창에서 파일을 열려면 줄 번호 항목을 클릭합니다. 파일이 창의 새 섹션에 표시되므로 원본 파일을 계속 유지하면서 파일을 계속 탐색할 수 있습니다.

파일 창에서와 마찬가지로 상호 참조 창을 사용하여 계속해서 상호 참조를 탐색할 수 있습니다. 이렇게 하면 창에 탐색경로 트레일이 표시되며, 이 경로를 사용하여 여러 교차 참조 간에 이동할 수 있습니다.

화면 상단에 있는 검색창을 사용하여 특정 파일이나 코드 스니펫을 검색할 수 있습니다. 검색은 항상 기본 분기를 기준으로 합니다.

모든 검색에는 기본적으로 RE2 정규 표현식이 사용됩니다. 정규 표현식을 사용하지 않으려면 검색어를 큰따옴표(")로 묶습니다.

참고: 특정 파일을 빠르게 검색하려면 마침표 앞에 백슬래시를 추가하거나 전체 파일 이름을 따옴표로 묶습니다.

foo\.java
"foo.java"

다음 필터를 사용하여 검색 범위를 좁힐 수 있습니다.

필터 기타 옵션 설명
lang: language: 파일 언어를 기준으로 일치검색을 수행합니다. lang:java 테스트
file: filepath:
path:
f:
case:yes 검색 시 대소문자를 구분합니다. 기본적으로 검색어는 대소문자를 구분하지 않습니다. case:yes Hello World
class: 클래스 이름을 검색합니다. class:MainClass
function: func: 함수 이름을 검색합니다. 함수:인쇄
- 검색어를 부정합니다. 안녕 -세계
\ 특수문자(예: ., \ 또는 (. 실행\(\)
'[term]' 리터럴 검색을 수행합니다. '클래스:기본'

추가 지원

문제를 신고하려면 화면 오른쪽 상단에 표시되는 의견 버튼을 클릭하고 제공된 양식에 의견을 입력합니다.