มีความคิดเห็นรหัสในโครงการ opensource หรือไม่ ถ้าเป็นเช่นนั้นเครื่องมืออะไรที่ใช้ในการทำเช่นนี้?


10

ฉันรู้ว่ามีแรงผลักดันอย่างมากสำหรับการรีวิวโค้ดในการพัฒนาเชิงพาณิชย์ อย่างไรก็ตามมีการตรวจสอบรหัสที่ใช้ในซอฟต์แวร์โอเพนซอร์ซ ถ้าเป็นเช่นนั้นแล้วพวกเขาจะปฏิบัติอย่างไร [มันเป็นการกระทำที่ล่าช้าหรือ "สภาพแวดล้อมที่กำหนดไว้ล่วงหน้า" มีเครื่องมือที่อนุญาตให้แพตช์ถูกส่งไปยังอุปกรณ์อื่น] หรือไม่?

มีโครงการใดบ้างที่ใช้บทวิจารณ์โค้ด?

จากความเข้าใจของฉันเคอร์เนลลินุกซ์ส่วนใหญ่ขึ้นอยู่กับความไว้วางใจของผู้เดินทาง MySQL ขึ้นอยู่กับการอนุมัติของผู้เขียนหลักและผลกระทบต่อประสิทธิภาพ


4
Linux ใช้ระบบ lieutenants + dictator จริง ๆ
ทางเลือก

คำตอบ:


13

โครงการโอเพ่นซอร์สเกือบทั้งหมดใช้เวิร์กโฟลว์ผู้รักษาประตูบางประเภทซึ่งบุคคลหรือกลุ่มบุคคลต้องลงชื่อออกจากการเปลี่ยนแปลงทั้งหมดเพื่อเข้าสู่งานสร้างอย่างเป็นทางการ โครงการขนาดใหญ่บางอย่างเช่นเคอร์เนล Linux มีเลเยอร์ของผู้รักษาประตู คุณส่งการเปลี่ยนแปลงไปยังคนที่จัดการพื้นที่ของระบบย่อยพวกเขาส่งการเปลี่ยนแปลงไปยังคนที่จัดการระบบย่อยทั้งหมดและพวกเขาส่งการเปลี่ยนแปลงของพวกเขาไปยัง Linus Torvalds ซึ่งบางครั้งตรวจสอบรหัสของตัวเองหรือเชื่อใจผู้แทนของเขา ความคิดเห็นเหล่านี้มักจะไม่มีโครงสร้างที่เป็นทางการ เป็นเพียงคนที่มองหารหัสก่อนที่จะถูกรวมเข้าด้วยกัน

เท่าที่เครื่องมือให้ดูที่กลไกการร้องขอการดึงบน Github เพื่อเป็นตัวอย่างที่ดี คุณทำการร้องขอการดึงและในหน้าเว็บที่อุทิศให้กับคำขอการดึงนั้นผู้คนให้ความเห็นและผู้เขียนจะทำการแก้ไขจนกว่าจะดีพอที่จะยอมรับ ผู้รักษาประตูคนอื่นใช้เพียงแค่คอมไพล์ธรรมดาเพื่อนำแพตช์จากรายการส่งเมลหรือรวมคำขอดึงจากที่เก็บสาธารณะซึ่งเป็นหนึ่งในสาเหตุหลักที่ DVCSes เช่นคอมไพล์ถูกประดิษฐ์ขึ้น


5

โครงการโอเพ่นซอร์สมักจะมี (และควรถ้าไม่มี) ชุด "แนวทางชุมชน" ที่เผยแพร่อย่างชัดเจนซึ่งมักจะมีคำอธิบายของเวิร์กโฟลว์โครงการและวิธีการยอมรับการมีส่วนร่วม (และวิธีการทดสอบ) ในฐานะที่เป็นกระบวนการในการกลายเป็นผู้เดินทางหลัก

เท่าที่รีวิวโค้ดอีกครั้งมันขึ้นอยู่กับชุมชน แต่แนวทางมักจะชัดเจน ตัวอย่างแนวทางสำหรับการมีส่วนร่วมของผู้ที่ไม่ใช่ผู้ส่งมอบมีตั้งแต่ "รหัสการทำงานที่ชนะ" ถึง "การมีส่วนร่วมจะต้องมีการทดสอบและเอกสารประกอบอย่างครบถ้วนพร้อมการทดสอบที่ทำในเวลาเดียวกันกับรหัส" และทุกสิ่งในระหว่าง โดยไม่คำนึงถึงแนวทางเหล่านี้แนวทางหนึ่งที่ส่อให้เห็นคือผู้กระทำความผิดหลักจะตรวจสอบการมีส่วนร่วมใด ๆ และทั้งหมดจากผู้กระทำผิดก่อนที่จะยอมรับพวกเขา

โครงการโอเพ่นซอร์สที่มีกลุ่มของผู้ดูแลหลักมักจะมีการประชุมเสมือนหรือเวลาที่กำหนดเพื่อหารือเกี่ยวกับการมีส่วนร่วมใด ๆ ที่อาจจำเป็นต้องมีตาพิเศษ - เช่นเดียวกับกระบวนการ SE ของการลงคะแนนอย่างใกล้ชิดหลายครั้งโดยผู้ใช้ชื่อเสียง และการอภิปรายสิ่งที่น่าสงสัยผ่านเมตาหรือแชท

ต่อไปนี้เป็นลิงก์ด่วนไปยังตัวอย่างเอกสารชุมชนสำหรับโครงการที่ฉันรู้จักดีที่สุดซึ่งคุณสามารถค้นหาคำตอบสำหรับคำถามของคุณเฉพาะโครงการเหล่านี้ (ในไม่ช้าคุณจะสังเกตเห็นรูปแบบ):


คุณพูดถึงการทดสอบหน่วย ฉันชอบที่จะเห็นรายงานข้อผิดพลาดที่ส่งมาเป็นการทดสอบหน่วย :) ฉันไม่รู้เกี่ยวกับไกด์เหล่านั้น ขอบคุณ!
พระภิกษุ

3

โปรเจ็กต์ OSS ที่ใหญ่กว่าจะมีจำนวนผู้ดำเนินการหลัก ดังนั้นฉันคิดว่าพวกเขาเป็น "ผู้ตรวจสอบโค้ด" อย่างแท้จริง

นอกจากนี้เนื่องจากรหัส OSS นั้นเป็นเรื่องที่เปิดให้ทุกคนมีโอกาสที่จะอภิปรายเพิ่มเติมเกี่ยวกับรหัสที่คุณเขียน แม้ว่าสิ่งนี้อาจไม่ได้อยู่ในรูปแบบของการตรวจสอบโค้ดอย่างเป็นทางการคุณจะพบได้อย่างแน่นอนว่ารหัสของคุณจะไม่ถูกนำมาพิจารณาในขั้นต้นสำหรับโครงการ OSS ที่เฉพาะเจาะจง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.