कोड साझा करने के लिए सर्वोत्तम / बुरा अभ्यास? [बन्द है]


9

मैं जितने जीथुब का पता लगाता हूं, मुझे उतना ही अच्छा लगता है। मैं वास्तव में आनंद लेता हूं कि कैसे कोडिंग अधिक सामाजिक हो रही है।

मुझे इस बात की उत्सुकता है कि क्या कोई बुरी प्रथा है जिसे प्रोग्रामर को एक दूसरे के साथ साझा करने से बचना चाहिए। और बुरे प्रथाओं के नामकरण में, कोड साझा करने के लिए सर्वोत्तम अभ्यास क्या हैं ?

उदाहरण के लिए:

क्या एक एकल रेपो के लिए 'MiscProjects' नामक कई लिपियों / परियोजनाओं का होना एक बुरा अभ्यास है ? जहां यह रेपो, जैसा कि नाम से ही पता चलता है, विविध लघु लिपियों और परियोजनाओं का एक संग्रह है। यह ऐसा हो सकता है कि एक प्रोग्रामर अपने स्थानीय भंडारण पर परियोजनाओं को कैसे व्यवस्थित करता है, लेकिन यह संभवतः कोड साझा करने के लिए इष्टतम नहीं है?

शायद अगर एक अच्छा README / प्रलेखन किया जाता है, तो यह बेहतर होगा? या जब तक यह अच्छी तरह से प्रलेखित है, तब तक कुछ भी हो जाता है?

जवाबों:


9

जब कोई 'गलत व्यवहारों' पत्थर में सेट, वैसे ही दूसरे संस्करण नियंत्रण प्रणाली के साथ, देखते हैं सम्मेलनों

आपका गिट रेपो जितना संभव हो उतना छोटा होना चाहिए। यदि आप सीवीएस / एसवीएन मॉड्यूल से आ रहे हैं, तो एक संरचित एकल रिपॉजिटरी होना आम बात थी जो कई परियोजनाओं के लिए कई रिपॉजिटरी की रचना कर सकती थी। Git तरह से इन प्रत्येक परियोजना के लिए अलग Git रेपोस अलग और है। कारण हैं:

  • छोटे रेपो के लिए Git तेज होता है
  • इसके डिजाइन के कारण, प्रत्येक ऑपरेशन पूरे रेपो को प्रभावित करता है । यदि आप केवल उनमें से किसी एक पर काम कर रहे हैं तो आवश्यक परियोजनाओं पर गिट संचालन करना अक्षम है।

प्रलेखन, हमेशा की तरह, एक चाहिए। जबकि लोग कोड पढ़ने में माहिर होते हैं, कोई भी कोड की व्याख्या नहीं करना चाहता है जितना उन्हें जरूरत है। परियोजना का वर्णन करने के लिए शीर्ष-स्तर की README का उपयोग करना और परियोजना में शामिल (या शामिल होने की तलाश) के लिए गिट रेपो की संरचना हमेशा एक अच्छी बात होगी।

GitHub पर अधिकांश परियोजना सम्मेलनों के अनुरूप है। अपने भविष्य की परियोजनाओं की संरचना कैसे करें, इसके लिए उदाहरण के रूप में उनका उपयोग करें।

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