Bazel 참여

문제 신고 소스 보기

Bazel 프로젝트 및 생태계를 돕는 방법에는 여러 가지가 있습니다.

의견 보내기

Bazel을 사용하면서 개선할 수 있는 부분을 발견할 수 있습니다. 다음과 같은 경우 문제를 신고하면 도움이 됩니다.

  • Bazel이 다운되거나 bazel clean를 통해서만 해결할 수 있는 버그가 발생합니다.
  • 문서가 불완전하거나 명확하지 않습니다. 표시된 페이지의 오른쪽 상단에 있는 '문제 만들기' 링크를 사용하여 문제를 신고할 수도 있습니다.
  • 오류 메시지를 개선할 수 있습니다.

커뮤니티 참여

다음과 같은 방법으로 Bazel 커뮤니티에 참여할 수 있습니다.

  • Stack Overflow에서 질문에 답변
  • Slack의 다른 사용자 지원
  • 문서 개선 또는 예시 제공
  • 블로그나 소셜 미디어에서 내 경험이나 팁을 공유합니다.

참여 코드

Bazel은 대규모 프로젝트이므로 Bazel 소스 코드를 변경하기 어려울 수 있습니다.

다음 방법으로 Bazel 생태계에 기여할 수 있습니다.

  • pull 요청을 제공하여 규칙 유지관리자 지원
  • 새 규칙을 만들고 오픈소스로 제공하기
  • Bazel 관련 도구(예: 마이그레이션 도구)
  • 다른 IDE 및 도구와의 Bazel 통합을 개선합니다.

변경하기 전에 GitHub 문제를 만들거나 bazel-discuss@로 이메일을 보내세요.

가장 유용하며 버그를 수정하거나 기능을 추가합니다 (스타일 변경, 리팩터링, '정리' 변경사항과 반대). 변경사항에는 이전 버전과의 호환성, 이동성, 메모리 사용량과 성능에 미치는 영향을 염두에 두고 테스트와 문서가 포함되어야 합니다.

변경사항을 제출하는 방법을 알아보려면 패치 수락 프로세스를 참조하세요.

Bazel의 코드 설명

Bazel에는 여러 위치에 코드가 있는 대규모 코드베이스가 있습니다. 자세한 내용은 코드베이스 가이드를 참고하세요.

Bazel은 다음과 같이 구성됩니다.

  • 클라이언트 코드는 src/main/cpp에 있으며 명령줄 인터페이스를 제공합니다.
  • 프로토콜 버퍼는 src/main/protobuf에 있습니다.
  • 서버 코드는 src/main/javasrc/test/java에 있습니다.
    • 핵심 코드는 대부분 SkyFrame과 일부 유틸리티로 구성됩니다.
    • 기본 제공 규칙은 com.google.devtools.build.lib.rulescom.google.devtools.build.lib.bazel.rules에 있습니다. 먼저 규칙 작성 과제를 읽어보세요.
  • 자바 네이티브 인터페이스는 src/main/native에 있습니다.
  • 언어 지원을 위한 다양한 도구는 Bazel 컴파일 섹션의 목록에 설명되어 있습니다.

Bazel의 소스 코드 검색

Bazel의 소스 코드를 빠르게 검색하려면 Bazel 코드 검색을 사용하세요. Bazel의 저장소, 분기, 파일을 탐색할 수 있습니다. 기록, 차이점, 원인이 된 정보를 확인할 수도 있습니다. 자세한 내용은 Bazel 코드 검색 사용자 가이드를 참조하세요.