संस्करण नियंत्रण अपनाने को कैसे प्रोत्साहित करें


21

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


4
मैं एक उत्तर जोड़ूंगा, लेकिन मैं नहीं कर सकता। मैं अवाक (या बल्कि, टाइपलेस) हूं। SCCS को पहली बार प्रदर्शित हुए लगभग 40 वर्ष हो चुके हैं। वहाँ अभी भी वहाँ संगठन है कि कुछ भी लेकिन परियोजनाओं के लिए सबसे सरल संस्करण नियंत्रण का उपयोग नहीं करते हैं? (आजकल इसका दूसरा चरम है; कुछ लोगों के पास एक गिट रिपॉजिटरी के रूप में अपनी होम डायरेक्टरी है।)
डेविड हैमन्स

11
इसे प्रोत्साहित न करें; इसे मांगें।
स्टीवन एवर्स

1
जिस कंपनी के साथ हम हैं, उससे कहीं अधिक बड़ी कंपनियों के साथ अब मैं सहमत हूं और मुझे अभी भी एक में भाग लेना है जो स्रोत नियंत्रण का उपयोग कर रहा है ... उस कथन के बारे में सोचने के बाद, मैं अचानक देख सकता हूं कि उन्हें अपनी समस्या को ठीक करने के लिए किसी और की आवश्यकता क्यों थी। पहली चीज जो हम आमतौर पर करते हैं, वह यह है कि वे इसे स्थापित करते हैं ताकि हम इसका उपयोग अपने परिवर्तनों और हमारे एकीकरण और प्रबंधन के लिए कर सकें। जैसा कि @SnOrfus ने कहा है, इसकी मांग करें। आप उन सभी दस्तावेज़ीकरणों की ओर इशारा कर सकते हैं जो इसे एक सर्वोत्तम अभ्यास के रूप में भी नोट कर चुके हैं।
जोशुआ डेल

7
मैं स्नोरफस के साथ हूं। यहां कुछ अच्छे उत्तर हैं, लेकिन अंततः, यदि आपको तुरंत सकारात्मक प्रतिक्रिया नहीं मिलती है , तो जाने का समय है। डेविड हैमेन की तरह, मैं अवाक हूं कि 2011 में कोई भी डेवलपर ऐसी स्थिति में है जहां उन्हें इस तरह के मुद्दे से निपटने की आवश्यकता है। संस्करण नियंत्रण की कमी एक शिथिलता है जो अभी स्वीकार्य नहीं है।
कार्सन 63000

2
एक रात में चुपके और उनके हार्ड ड्राइव को हटा दें। कोई खेद नहीं। वहाँ व्यावसायिकता की अस्थायी चूक।
डीजेकेवर्थ

जवाबों:


7

आपको संस्करण नियंत्रण के उपयोग के लिए एक मामला बनाने की जरूरत है, और पहले इसे अपने सहकर्मियों को बेचने की कोशिश करें, और यदि वह विफल रहता है, तो परियोजना नेतृत्व और उच्चतर श्रृंखला तक।

सॉफ्टवेयर इंजीनियरों के लिए, आपका मामला इस बात पर केंद्रित होना चाहिए कि यह लंबे समय में समय और सिरदर्द कैसे बचाता है। अपने खुद के अतीत, या प्रकाशित कहानियों (ब्लॉग, पत्रिकाओं में लेख, श्वेत पत्र) से समय का पता लगाएं कि कैसे संस्करण नियंत्रण का उपयोग आपके जीवन को आसान बनाता है। यदि आपको संस्करण नियंत्रण नहीं होने से जला दिया गया है, तो इसे व्यक्तिगत बनाएं। यदि आपके साथी डेवलपर्स एक ही स्थिति में हैं, तो उन्हें प्रकाश को देखना चाहिए और ये उपकरण उनकी मदद कैसे कर सकते हैं।

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

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

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

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

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

इसके अलावा, यह एक सामान्य दृष्टिकोण है जिसे आप किसी भी प्रक्रिया या प्रौद्योगिकी में सुधार के लिए अनुसरण कर सकते हैं।


5

पहला सवाल है: वे वर्तमान में क्या करते हैं? निश्चित रूप से प्रत्येक डेवलपर के पास अपने स्वयं के बॉक्स पर अटका हुआ स्रोत कोड नहीं होता है जिसे वह इच्छानुसार बदलता है। आपके पास वर्तमान में उनके द्वारा अनुसरण की जाने वाली प्रक्रिया है, आप इस प्रक्रिया को बढ़ाने वाले कुछ उपकरणों का सुझाव दे सकते हैं - आमतौर पर एक एससीएम उन्हें इस प्रक्रिया में मदद करने के लिए आदर्श है, बजाय उन्हें एक अलग प्रक्रिया का पालन करने के।

यहां मुख्य बिंदु यह है कि अगर उनके पास काम करने का छद्म-एससीएम तरीका है, हो सकता है कि वर्तमान संस्करण को किसी सर्वर पर कहीं स्टोर किया जाए, तो आपको यह निर्धारित करने की आवश्यकता है कि क्या डीवीसीएस या सीवीएस अधिक उपयुक्त है, डॉन; अगर SVN एक बेहतर फिट है।


3

सबसे तेज़ तरीका प्रबंधन को यह समझाने का है कि इसकी आवश्यकता है।

कुछ गणना करें:

संस्करण नियंत्रण सॉफ्टवेयर की लागत - मुफ्त।
रिपॉजिटरी का समर्थन करने के लिए हार्डवेयर की लागत - एक सर्वर।
सॉफ्टवेयर को लागू करने की लागत - एक छोटी टीम के लिए कुछ दिन, बड़ी टीमों के लिए बढ़ रहा है।

संस्करण नियंत्रण लागू नहीं करने की लागत:

सबसे अच्छा मामला - संपादन गुम होने, एक-दूसरे के बदलावों को ओवरराइट करने आदि के कारण आए दिन, बग्स आवर्ती और इतने पर।
सबसे खराब मामला - हालाँकि आपकी टीम के प्रयास के कई वर्षों तक खर्च हुए हैं।

यह बाद का आंकड़ा सर्वर खराब होने आदि के कारण आप अपने सभी कामों को खोने का सबसे बुरा मामला है, लेकिन यहां तक ​​कि "सबसे अच्छा मामला" परिदृश्यों को घर में लाना चाहिए कि इसकी आवश्यकता क्यों है। आवर्ती की लागत अधिक हो सकती है क्योंकि यह खोए हुए ग्राहकों को दे सकता है।

विकास टीम को इन लागतों को भी समझना चाहिए और यह देखते हुए कि अधिकांश (यदि सभी नहीं) संस्करण नियंत्रण सॉफ्टवेयर इन दिनों आईडीई के साथ समेकित रूप से एकीकृत होते हैं, तो वे यह भी ध्यान नहीं देंगे कि यह अधिकांश समय है।


संस्करण नियंत्रण सॉफ्टवेयर की लागत मुक्त नहीं है। सॉफ़्टवेयर स्वयं मुक्त हो सकता है (आपके चयन के आधार पर), लेकिन एक संगठन में जिसके पास कुछ नहीं है, आपको इंजीनियरों के लिए प्रशिक्षण की आवश्यकता है, आपको निवास करने के लिए रिपॉजिटरी के लिए हार्डवेयर की आवश्यकता हो सकती है, और यदि संगठन इसे सभी के लिए रोल आउट करता है। नए हार्डवेयर और सॉफ्टवेयर आवश्यकताओं का समर्थन करने के लिए आईटी फंडिंग में वृद्धि। किसी परियोजना में देर से प्रक्रिया को लागू करने के उच्च जोखिम का उल्लेख नहीं करना।
थॉमस ओवेन्स

@Thomas - इसलिए यह लागू करने की लागत (जो शायद एक कम है) के बारे में मेरी लाइन
ChrisF

संपादन इसे बहुत बेहतर बनाता है।
थॉमस ओवेन्स

1

प्रबंधन आमतौर पर पैसे बचाने के बारे में सबसे अधिक परवाह करता है। इस बात पर जोर दें कि संस्करण नियंत्रण से टीम को आर्थिक रूप से कैसे लाभ हो सकता है और आप तुरंत उनका ध्यान आकर्षित करेंगे!


प्रबंधन करता है, लेकिन यदि आपके पास किसी व्यक्ति के बजाय कुछ कहने का समूह है, तो प्रबंधन का ध्यान आकर्षित करना हमेशा आसान होता है।
थॉमस ओवेन्स

@ थोमस वास्तव में, अधिक आवाजें अधिक शोर पैदा करती हैं और इस तरह से प्रबंधन का ध्यान आकर्षित करने की संभावना अधिक होती है
rrazd

1

एक पहलू यह है कि यहां अन्य लोगों ने इस बात को नहीं छुआ है कि मुझे लगता है कि आप अपने कोने में मिल गए हैं - आप वितरित संस्करण नियंत्रण के बारे में बात कर रहे हैं - इसकी प्रकृति से, आप इसे एक वास्तविक अभ्यास में बदल सकते हैं, एक डेवलपर समय पर। एक सामानीय संस्करण नियंत्रण के साथ, जैसे हम अपने कार्यालय (MS Visual SourceSafe) में क्या उपयोग करते हैं, आपके पास घन से उस व्यक्ति के लिए खदान से उस तक जाने और उसे बेचने के लिए एक कठिन समय होगा, संस्करण नियंत्रण। हालाँकि, (किसी भी) डीवीसीएस के साथ, आप बस कह सकते हैं "अरे, यह कोशिश करो, और देखो कि क्या आप इसे पसंद करते हैं। मैं आपको रस्सियों को दिखाऊंगा, और मुझे किसी भी प्रश्न का उत्तर देने में खुशी होगी, आपके माध्यम से, ब्ला ब्ला blah "। इस तरह, आपको उच्च पर नीचे से "प्रक्रिया" की आवश्यकता नहीं है, आप एक बार में एक व्यक्ति, एक जमीनी स्तर जनादेश का निर्माण कर सकते हैं।


0

Gbjbaanb के उत्तर पर निर्माण।

यहां महत्वपूर्ण बात यह है कि आपको मौजूदा नियंत्रण प्रक्रिया के लिए संस्करण नियंत्रण प्रक्रिया को अनुकूलित करना चाहिए और यह दिखाना चाहिए कि यह टीम के बाकी प्रयासों को कैसे बचाता है।

मैं व्यक्तिगत रूप से भी मर्क्यूरियल का पक्ष लेता हूं, लेकिन मैं जरूरी नहीं कि इसे संस्करण नियंत्रण से जुड़े लोगों पर केंद्रित करना चाहता हूं क्योंकि यह पुराने जमाने के सर्वर आधारित लॉकिंग संस्करण नियंत्रण प्रणाली की तुलना में थोड़ा कठिन है। अगर उसने कहा कि यह एक सच्चा ग्रीनफील्ड्स साइट है तो हो सकता है कि पूरे हॉग पर जाएं, '80 & 90' को छोड़ें और मर्क्यूरियल के साथ जाएं। मैं Mercurial के आसपास बनाए गए 3rd पार्टी सॉफ्टवेयर जीवनचक्र सामानों में से कुछ को भी देखूंगा - मुझे यकीन है कि एक है, लेकिन इसका 'मुझे बचाना' है);

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


आपकी सभी प्रतिक्रियाओं के लिए धन्यवाद, क्या इस प्रश्न को सामुदायिक प्रश्न बनाया जा सकता है? जो शक्तियां मुझे एक संक्षिप्त बात / डेमो 15mins दे रही हैं कि मैं इसका उपयोग कैसे कर रहा हूं। एक बाधा यह है कि इसका उपयोग कौन करता है? क्या यह इंटरनेट पर कुछ शेयरवेयर / ब्लोटवेयर है? मैं कुछ जानी-मानी कंपनियों की ओर इशारा करके डर को शांत करना चाहूंगा, जो व्यावसायिक रूप से मर्क्यूरियल (किसी भी डीसीवीएस) का उपयोग / समर्थन कर रही हैं। क्या कोई मुझे कुछ कंपनियों का हवाला देने में मदद कर सकता है जो Hg का उपयोग करते हैं? या इसका उपयोग करने वाले अन्य प्रसिद्ध उत्पाद। ओपन-सोर्स के लिए प्रतिरोध (अनिष्चित-दृष्टि से अधिक चमक) है, कुछ प्रबंधकों को सॉफ़्टवेयर के बारे में संदेह है कि वे भुगतान नहीं करते हैं।
मान वा किललेशवा
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.