패치 수락 프로세스

이 페이지에서는 Bazel 코드베이스를 제안하고 변경하는 방법을 간략하게 설명합니다.

  1. Bazel 기여 정책을 읽습니다.
  2. GitHub 문제를 만들어 계획과 설계에 대해 논의합니다. 변경되거나 동작이 추가되는 pull 요청에는 추적에 상응하는 문제가 필요합니다.
  3. 중요한 변경을 제안하는 경우 디자인 문서를 작성합니다.
  4. 참여자 라이선스 계약에 서명했는지 확인합니다.
  5. 기능을 구현하는 git 커밋을 준비합니다. 테스트를 추가하고 문서를 업데이트하는 것을 잊지 마세요. 변경사항에 사용자에게 표시되는 효과가 있는 경우 출시 노트를 추가하세요. 호환되지 않는 변경사항인 경우 브레이킹 체인지 출시 가이드를 읽어보세요.
  6. GitHub에서 pull 요청을 만듭니다. GitHub를 처음 사용하는 경우 풀 요청 정보를 읽어보세요. 기본 Bazel 저장소에 분기를 만들 수 있는 권한이 제한되므로 커밋을 저장소의 자체 포크로 푸시해야 합니다.
  7. Bazel 담당자가 영업일 기준 2일 이내에 검토자를 할당해야 합니다(미국 및 독일의 공휴일 제외). 이 시간에 뷰어가 할당되지 않은 경우 bazel-dev@googlegroups.com으로 이메일을 보내 요청할 수 있습니다.
  8. 검토자와 협력하여 코드 검토를 완료합니다. 각 변경사항에 대해 새 커밋을 만들고 푸시 요청을 변경합니다. 검토하는 데 시간이 너무 오래 걸리면 (예: 검토자가 응답하지 않음) bazel-dev@googlegroups.com으로 이메일을 보내세요.
  9. 검토가 완료되면 Bazel 유지관리 담당자가 패치를 Google의 내부 버전 제어 시스템에 적용합니다.

    이렇게 하면 추가 변경을 제안할 수 있는 내부 사전 제출 검사가 트리거됩니다. 아직 선호하는 표현이 없다면 변경사항을 제출하는 관리자가 디자인에 영향을 미치지 않는 변경사항 (예: 린트)을 추가합니다. 더 자세히 변경해야 하거나 변경사항을 직접 적용하고 싶은 경우 검토 검토자가 검토 의견에서 환경설정을 명확하게 전달해야 합니다.

    내부 제출 후 패치를 Git 커밋으로 내보냅니다. 이 단계에서 GitHub pull 요청이 종료됩니다. 모든 최종 변경사항이 전환에 기여합니다.