स्पष्ट रूप से, कम नीतियां, बेहतर। आपके पास जितनी अधिक नीतियां हैं, संस्करण नियंत्रण का उपयोग न करने के लिए प्रोत्साहन जितना अधिक होगा। तब क्या होता है:
- कोड समानांतर, अनियंत्रित स्रोत नियंत्रण प्रणाली पर विकसित किया गया है, और केवल अंतिम संशोधन आधिकारिक को जाता है।
- लोग जितना संभव हो उतना देरी कर रहे हैं, जो कि वे अन्य डेवलपर्स के साथ क्या कर रहे हैं की दृश्यता को कम करते हैं।
- लोग वास्तव में कुछ करने से बचेंगे अगर वे इससे दूर हो सकते हैं, और कुछ इसे दूर करने का एक तरीका ढूंढेंगे।
वास्तव में, मुझे लगता है कि आपकी तीन चेक-इन नीतियां पहले से ही बहुत अधिक हैं। उदाहरण के लिए:
- चेक-इन से पहले कोड की समीक्षा करने के बाद कोड को आगे बढ़ने में काम करना मुश्किल हो जाता है। इसके बजाए, यदि स्रोत नियंत्रण प्रणाली इसे (और कई करते हैं) की अनुमति देती है, तो यह नियंत्रित करें कि स्रोत पीयर की समीक्षा की गई है या नहीं। कुछ प्रणालियों के साथ आप एक संशोधन के लिए जीवन चक्र बना सकते हैं, अन्य लोगों के साथ आप शाखाएं बना सकते हैं, और फिर भी अन्य आप टैग का उपयोग कर सकते हैं।
- चेक-इन से जुड़े कार्य-आइटम होने से डेवलपर्स के लिए अन्वेषणकारी प्रोग्रामिंग करना संभव हो सकता है, या संभावित सुधारों पर पहल हो सकती है। यह डेवलपर्स stifles। इसके बजाए, सुनिश्चित करें कि कोई संशोधन एकीकरण परीक्षण या उपयोगकर्ता स्वीकृति परीक्षण में जा रहा है, उत्पादन का उल्लेख न करने के लिए, एक कार्य आइटम से जुड़ा हुआ है।
यह एंटी-एंटरप्राइज़ ध्वनि सकता है, लेकिन यह कुछ चीजें हैं जिन्हें हमने कुछ दशकों के सॉफ्टवेयर विकास में सीखा है। अधिकांश उद्यम संगठनों को इसमें शामिल नहीं किया गया है, लेकिन अंत में, वे करेंगे। तो, आप बहुत विपरीत तरीके से जा सकते हैं, लेकिन यह न कहें कि किसी ने कभी आपको बताया नहीं है।
मैं सामान्य सिद्धांतों के लिए Agile Manifest, और विशेष रूप से Lean Software Development की अनुशंसा करता हूं।
या, स्टैक ओवरफ्लो डिज़ाइन दर्शन को ध्यान में रखते हुए, सिस्टम को इच्छित व्यवहार को इनाम दें।
स्रोत
2009-07-29 02:55:15
पीयर-समीक्षा चेक-इन के लिए एक शर्त नहीं है। आप पहले चेक कर सकते हैं, सहकर्मी प्रतिबद्ध फ़ाइल की समीक्षा करें, फिर समीक्षा के बाद फ़ाइलों को दूसरी शाखा में प्रचारित करें। – Dan