パッチの受け入れプロセス

このページでは、コントリビューターが Bazel コードベースを提案して変更する方法について説明します。

  1. Bazel コントリビューション ポリシーを読む。
  2. GitHub の問題を作成して、計画と設計について話し合う。動作を変更または追加する pull リクエストをトラッキングするには、対応する問題が必要です。
  3. 重要な変更を提案する場合は、設計ドキュメントを作成してください。
  4. 投稿者ライセンス契約に署名していることをご確認ください。
  5. 機能を実装する Git commit を準備します。テストの追加やドキュメントの更新も忘れずに行ってください。変更がユーザーに表示される場合は、リリースノートを追加してください。互換性のない変更の場合は、互換性を破る変更のロールアウトに関するガイドをご覧ください。
  6. GitHub に pull リクエストを作成します。GitHub を初めて使用する場合は、pull リクエストについてをご覧ください。メインの Bazel リポジトリにブランチを作成する権限は制限されているため、commit をリポジトリの独自のフォークに push する必要があります。
  7. Bazel の保守担当者は、2 営業日以内にレビュー担当者を割り当てる必要があります(米国とドイツの祝日を除く)。その期間にレビューアを割り当てない場合は、bazel-dev@googlegroups.com にメールを送信してリクエストできます。
  8. レビュー担当者と協力してコードレビューを行います。変更ごとに新しい commit を作成し、pull して pull リクエストに変更を加えます。審査に時間がかかりすぎる場合(審査担当者から回答がない場合など)、bazel-dev@googlegroups.com にメールを送信します。
  9. 確認が完了すると、Bazel メンテナは Google の内部バージョン管理システムにパッチを適用します。

    これにより、さらに変更を提案する内部送信前チェックがトリガーされます。設定をまだ指定していない場合、変更を送信する管理者は、設計に影響を与えない変更(lint チェックなど)を追加します。より高度な変更が必要な場合や、直接変更を適用する場合は、レビュー担当者の間で設定に関する好みを伝える必要があります。

    内部送信後、パッチは Git commit としてエクスポートされ、この時点で GitHub pull リクエストがクローズされます。最終的な変更はすべて、お客様に行われます。