क्या ओपनसोर्स परियोजनाओं में कोड समीक्षाएं हैं? यदि हां, तो ऐसा करने के लिए कौन से उपकरण का उपयोग किया जाता है?


10

मुझे पता है कि व्यावसायिक विकास में कोड समीक्षाओं के लिए एक बड़ा धक्का है। हालांकि, क्या कोड स्रोत ओपन सोर्स सॉफ़्टवेयर में उपयोग किए जाते हैं या विश्वास पर आधारित होते हैं? यदि ऐसा है, तो उनका प्रदर्शन कैसे किया जाता है? [क्या यह एक विलंबित प्रतिबद्धता है, "एक पूर्व प्रतिबद्ध वातावरण", क्या कोई ऐसा उपकरण है जो पैच को किसी अन्य देव को भेजने की अनुमति देता है]?

क्या कोई परियोजनाएं हैं जो कोड समीक्षाओं का उपयोग करती हैं?

मेरी समझ से लिनक्स कर्नेल ज्यादातर कमिटर के विश्वास के आसपास आधारित है। MySQL मुख्य लेखक की स्वीकृति और प्रदर्शन प्रभाव पर आधारित था।


4
लिनक्स वास्तव में एक लेफ्टिनेंट + तानाशाह प्रणाली का उपयोग करता है।
वैकल्पिक

जवाबों:


13

लगभग सभी ओपन सोर्स प्रोजेक्ट किसी प्रकार के गेटकीपर वर्कफ़्लो का उपयोग करते हैं, जहाँ एक व्यक्ति या लोगों के समूह को आधिकारिक बिल्ड में जाने के लिए सभी परिवर्तनों पर हस्ताक्षर करना चाहिए। कुछ बड़ी परियोजनाओं, जैसे कि लिनक्स कर्नेल, में द्वारपालों की परतें होती हैं। आप किसी ऐसे व्यक्ति को परिवर्तन भेजते हैं जो किसी उप-प्रणाली के क्षेत्र का प्रबंधन करता है, वे अपने परिवर्तनों को किसी ऐसे व्यक्ति को भेजते हैं जो संपूर्ण उप-व्यवस्था का प्रबंधन करता है, और वे अपना परिवर्तन लाइनस टोरवाल्ड्स को भेजते हैं, जो कभी-कभी कोड की समीक्षा करते हैं या कभी-कभी अपने लेफ्टिनेंट पर भरोसा करते हैं। इन समीक्षाओं में आमतौर पर औपचारिक संरचना नहीं होती है। इससे पहले कि यह विलय हो जाए, यह किसी को कोड देख रहा है।

जहाँ तक उपकरण हैं, एक अच्छे उदाहरण के लिए जीथब पर पुल अनुरोध तंत्र को देखें। आप एक पुल अनुरोध करते हैं, और उस पुल अनुरोध के लिए समर्पित एक वेब पेज पर लोग टिप्पणी करते हैं और लेखक संशोधन करता है जब तक कि यह स्वीकार करने के लिए पर्याप्त नहीं है। अन्य द्वारपाल केवल मेलिंग सूचियों से पैच लगाने के लिए सादे गिट का उपयोग करते हैं या सार्वजनिक रिपॉजिटरी से पुल अनुरोधों को मर्ज करते हैं, जो मुख्य कारणों में से एक है डीवीसी जैसे गिट का आविष्कार किया गया था।


5

ओपन सोर्स प्रोजेक्ट्स में अक्सर (और, अगर वे नहीं करते हैं) "सामुदायिक दिशानिर्देशों" का एक स्पष्ट रूप से प्रकाशित सेट, जिसमें अक्सर प्रोजेक्ट वर्कफ़्लो का विवरण शामिल होता है और योगदान कैसे स्वीकार किए जाते हैं (और इस प्रकार उनका परीक्षण कैसे किया जाता है), कोर कमिटेटर बनने की प्रक्रिया के रूप में।

जहां तक ​​कोड की समीक्षा है, फिर से यह समुदाय पर निर्भर करता है लेकिन दिशानिर्देश अक्सर स्पष्ट किए जाते हैं। गैर-कमिटर्स द्वारा योगदान के लिए कुछ उदाहरण दिशानिर्देश "वर्किंग कोड जीत" से लेकर "योगदान तक पूर्ण परीक्षण कवरेज और प्रलेखन होना चाहिए, कोड के रूप में एक ही समय में किए गए परीक्षणों के साथ" और बीच में सब कुछ; इन दिशानिर्देशों की परवाह किए बिना, एक दिशानिर्देश जो निहित है, यह है कि कोर कमिटर्स उन्हें स्वीकार करने से पहले गैर-कमिटर्स से किसी भी और सभी योगदानों की समीक्षा करेंगे।

कोर कमिटर्स के समूहों के साथ ओपन सोर्स प्रोजेक्ट में भी अक्सर किसी भी योगदान पर चर्चा के लिए वर्चुअल मीटिंग या समर्पित समय होता है, जिसमें आंखों के अतिरिक्त सेट की आवश्यकता हो सकती है - बहुत कुछ एक प्रश्न के बंद होने से पहले एक निश्चित प्रतिष्ठा के उपयोगकर्ताओं द्वारा कई करीबी वोटों की एसई प्रक्रिया की तरह। और मेटा या चैट के माध्यम से संदिग्ध चीजों की चर्चा।

यहां उन परियोजनाओं के लिए कुछ उदाहरण सामुदायिक दस्तावेज़ों के कुछ त्वरित लिंक दिए गए हैं, जिन्हें मैं सबसे अच्छी तरह से जानता हूं, जहां आप इन परियोजनाओं के लिए अपने प्रश्न के उत्तर पा सकते हैं (आप जल्द ही एक विषय पर ध्यान देंगे):


आपने इकाई परीक्षणों का उल्लेख किया है। मुझे यूनिट परीक्षणों के रूप में प्रस्तुत बग रिपोर्ट देखना अच्छा लगेगा। :) मुझे उन गाइडों के बारे में कुछ पता नहीं था। धन्यवाद!
20

3

बड़े ओएसएस परियोजनाओं में कई कोर कमिटर्स होंगे। इसलिए मुझे लगता है कि वे "कोड समीक्षक" हैं।

इसके अलावा, चूंकि ओएसएस कोड प्रकृति द्वारा सभी के लिए खुला है, इसलिए आपके द्वारा लिखे गए कोड के आसपास बहुत अधिक चर्चा होने की संभावना है। जब तक यह औपचारिक कोड समीक्षाओं के रूप में नहीं हो सकता है, तो आप निश्चित रूप से पता लगाएंगे कि क्या आपका कोड किसी विशिष्ट ओएसएस परियोजना के लिए खरोंच तक नहीं माना जाता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.