การพัฒนาโปรเจ็กต์และระบบนิเวศของ Bazel นั้นทำได้หลายวิธี
แสดงความคิดเห็น
เมื่อใช้ Bazel คุณอาจเห็นสิ่งที่ปรับปรุงให้ดีขึ้นได้ คุณให้ความช่วยเหลือได้โดยการรายงานปัญหาในกรณีต่อไปนี้
- Bazel ขัดข้องหรือพบข้อบกพร่องที่แก้ไขได้โดยใช้
bazel clean
เท่านั้น - เอกสารไม่สมบูรณ์หรือไม่ชัดเจน และรายงานปัญหาจากหน้าเว็บที่กำลังดูได้โดยใช้ลิงก์ "สร้างปัญหา" ที่มุมขวาบนของหน้า
- ปรับปรุงข้อความแสดงข้อผิดพลาดได้
เข้าร่วมในชุมชน
คุณสามารถมีส่วนร่วมกับชุมชน Bazel ได้โดยทําดังนี้
- การตอบคำถามใน Stack Overflow
- ช่วยเหลือผู้ใช้คนอื่นๆ บน Slack
- ปรับปรุงเอกสารประกอบหรือการมอบตัวอย่าง
- แชร์ประสบการณ์หรือเคล็ดลับ เช่น ในบล็อกหรือโซเชียลมีเดีย
ร่วมรหัส
Bazel เป็นโครงการขนาดใหญ่และการเปลี่ยนแปลงซอร์สโค้ดของ Bazel อาจเป็นเรื่องยาก
คุณสามารถมีส่วนร่วมในระบบนิเวศของ Bazel ได้โดยทําดังนี้
- ช่วยผู้ดูแลกฎโดยการส่งคำขอพุล
- การสร้างกฎใหม่และการทำให้กฎเหล่านั้นเป็นแบบโอเพนซอร์ส
- การร่วมให้ข้อมูลกับเครื่องมือที่เกี่ยวกับ Bazel เช่น เครื่องมือย้ายข้อมูล
- ปรับปรุงการผสานรวม Bazel กับ IDE และเครื่องมืออื่นๆ
ก่อนทำการเปลี่ยนแปลง ให้สร้างปัญหา GitHub หรือส่งอีเมลถึง bazel-discuss@
การมีส่วนร่วมที่มีประโยชน์ที่สุดจะแก้ไขข้อบกพร่องหรือเพิ่มฟีเจอร์ต่างๆ (ตรงข้ามกับการเปลี่ยนแปลงด้านสไตล์ การเปลี่ยนโครงสร้างภายใน หรือ "การจัดระเบียบใหม่") การเปลี่ยนแปลงของคุณควรรวมถึงการทดสอบและเอกสารประกอบ โดยคํานึงถึงความเข้ากันได้แบบย้อนหลัง ความสามารถในการพกพา และผลกระทบต่อการใช้งานหน่วยความจำและประสิทธิภาพ
ดูวิธีส่งการเปลี่ยนแปลงได้ที่ขั้นตอนการยอมรับแพตช์
คำอธิบายโค้ดของ Bazel
Bazel มีฐานของโค้ดขนาดใหญ่ซึ่งมีโค้ดในหลายตำแหน่ง ดูรายละเอียดเพิ่มเติมได้ที่คู่มือโค้ดฐาน
Bazel มีองค์ประกอบดังนี้
- รหัสไคลเอ็นต์อยู่ใน
src/main/cpp
และมีอินเทอร์เฟซบรรทัดคำสั่ง - บัฟเฟอร์โปรโตคอลอยู่ใน
src/main/protobuf
- รหัสเซิร์ฟเวอร์คือ
src/main/java
และsrc/test/java
- โค้ดหลักซึ่งส่วนใหญ่ประกอบด้วย SkyFrame และยูทิลิตีบางอย่าง
- กฎที่มีไว้ให้อยู่แล้วคือภาษา
com.google.devtools.build.lib.rules
และในcom.google.devtools.build.lib.bazel.rules
คุณควรอ่านเกี่ยวกับความท้าทายของกฎการเขียนก่อน
- อินเทอร์เฟซแบบดั้งเดิมของ Java อยู่ใน
src/main/native
- เครื่องมือต่างๆ สำหรับการรองรับภาษามีอธิบายไว้ในรายการในส่วนการคอมไพล์ Bazel
กำลังค้นหาซอร์สโค้ดของ Bazel
หากต้องการค้นหาในซอร์สโค้ดของ Bazel อย่างรวดเร็ว ให้ใช้การค้นหาโค้ดของ Bazel คุณสามารถไปยังส่วนต่างๆ ของที่เก็บ สาขา และไฟล์ของ Bazel คุณสามารถดูประวัติ ความแตกต่าง และข้อมูลการตำหนิได้ด้วย ดูข้อมูลเพิ่มเติมได้ในคู่มือผู้ใช้การค้นหาโค้ด Bazel