Proses Penerimaan Patch

Laporkan masalah Lihat sumber Per Malam · 7,2 · 7,1 · 7,0 · 6,5 · 6,4

Halaman ini menjelaskan bagaimana kontributor dapat mengusulkan dan membuat perubahan pada Bazel code base.

  1. Baca kebijakan Kontribusi Bazel.
  2. Buat masalah GitHub untuk mendiskusikan rencana dan desain Anda. Permintaan pull yang mengubah atau menambahkan perilaku memerlukan masalah yang sesuai untuk pelacakan.
  3. Jika Anda mengusulkan perubahan yang signifikan, tulis dokumen desain.
  4. Pastikan Anda telah menandatangani Lisensi Kontributor Perjanjian.
  5. Siapkan git commit yang mengimplementasikan fitur tersebut. Jangan lupa untuk menambahkan pengujian dan perbarui dokumentasi. Jika perubahan Anda memiliki efek yang terlihat oleh pengguna, menambahkan catatan rilis. Jika itu adalah perubahan yang tidak kompatibel, baca panduan untuk meluncurkan perubahan yang dapat menyebabkan gangguan.
  6. Membuat permintaan pull di GitHub. Jika Anda baru mengenal GitHub, baca tentang pull permintaan. Perlu diketahui bahwa kami membatasi izin untuk membuat cabang pada repositori utama Bazel, jadi Anda harus mendorong komitmen Anda pada fork repositori Anda.
  7. Pengelola Bazel akan menunjuk Anda sebagai peninjau dalam dua hari kerja (kecuali hari libur di AS dan Jerman). Jika Anda tidak ditugaskan peninjau saat itu, Anda dapat memintanya dengan mengirim email bazel-discuss@googlegroups.com.
  8. Bekerja samalah dengan peninjau untuk menyelesaikan peninjauan kode. Untuk setiap perubahan, buat sebuah commit baru, lalu dorong untuk membuat perubahan pada permintaan pull Anda. Jika ulasan memakan waktu terlalu lama (misalnya, jika peninjau tidak responsif), kirim email ke bazel-discuss@googlegroups.com.
  9. Setelah peninjauan Anda selesai, pengelola Bazel menerapkan patch ke Sistem kontrol versi internal Google.

    Tindakan ini memicu pemeriksaan pra-pengiriman internal yang mungkin menunjukkan lebih banyak perubahan. Jika Anda belum menyatakan preferensi, pengelola mengirimkan perubahan Anda menambahkan "trivial" perubahan (seperti lint) yang tidak memengaruhi desain. Jika diperlukan perubahan yang lebih mendalam atau Anda ingin menerapkan perubahan secara langsung, Anda dan peninjau harus menyampaikan preferensi dengan jelas dalam komentar ulasan.

    Setelah pengiriman internal, patch diekspor sebagai Git commit, di mana permintaan pull GitHub akan ditutup. Semua perubahan akhir yang diatribusikan kepada Anda.