क्या हमें स्रोत नियंत्रण प्रणाली जैसे कि svn में विनिर्देश दस्तावेज लगाने चाहिए?


11

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

जवाबों:


4

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


2
सच है, अगर एसवीएन सिर्फ यह सुनिश्चित करता है कि मेरे पास हमेशा वर्तमान संस्करण है तो मैं खुश हूं। अधिकांश समय मुश्किलें कम होती हैं।
ज़ाचरी के

यह एकमात्र समस्या नहीं है, जब कई संपादक होते हैं तो लॉकिंग और ओवरराइटिंग की समस्या एक समस्या है
निकोल

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

यह उत्तर कुछ अन्य उत्तर के बारे में टिप्पणी की तरह लगता है। उदाहरण के लिए, प्रश्न में बूँद के बारे में कुछ भी उल्लेख नहीं है।
ब्रायन ओकले

15

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


3
अगर यह जहाजों की तुलना में क्या v1.0 चश्मा की तरह लग रहा था देखने के लिए और कुछ नहीं है, यह मनोरंजक है!
मार्टिन बेकेट

8

संस्करण विनिर्देशन दस्तावेज़ निश्चित रूप से एक योग्य लक्ष्य है।

हालाँकि, क्या आपके विनिर्देशन दस्तावेज़ केवल-पाठ और एक सादे पाठ फ़ाइल में हैं ? यदि हां, तो यह एक अच्छा समाधान हो सकता है।

यदि नहीं, तो स्रोत नियंत्रण शायद उनके लिए सही जगह नहीं है - स्रोत नियंत्रण बाइनरी फ़ाइलों के लिए खराब है

आमतौर पर, सादे पाठ फ़ाइलें न तो स्वरूपण के लिए या जल्दी देखने के लिए उतनी ही अच्छी होती हैं, इसलिए संस्करण के साथ विकि एक बेहतर विचार है।


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

1
WYSIWYG संपादकों के साथ अब कई विकी हैं। मैं एक बहुत अनिच्छुक शेयर पॉइंट कन्वर्ट हूं। एक डेवलपर के रूप में, मैं एक जुनून के साथ शेयर पॉइंट से नफरत करता था। फिर मैंने Microsoft BPOS के साथ साइन अप किया जो कि शेयरपॉइंट के साथ आता है और इसका उपयोग दूरस्थ टीम के सदस्यों के साथ प्रोजेक्ट्स पर सहयोग करने के लिए किया। इसमें विकी, फ़ोरम, कैलेंडर और दस्तावेज़ लाइब्रेरी (जो Microsoft Office डॉक्स के लिए ट्रैकिंग करता है) और अन्य सामान का एक गुच्छा है जो प्रोजेक्ट सहयोग को मृत बनाता है। मुझे लगता है कि विकी एक जीवित विनिर्देश के रूप में इतिहास के कारण परिपूर्ण है जो इसे प्रदान करता है।
माइकल ब्राउन

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

1

सभी दस्तावेज संग्रह के किसी न किसी रूप में होना चाहिए (अधिमानतः संशोधन नियंत्रण के साथ)।

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

लेकिन विशेष रूप से दस्तावेजों के लिए डिज़ाइन किए गए अन्य समाधान हैं। SharePoint मन को पसंद करता है, लेकिन मुझे यकीन है कि अन्य लोग भी हैं।


0

निश्चित रूप से। समस्याएँ जो दस्तावेज़ बायनेरिज़ के रूप में संग्रहीत की जाती हैं (उदाहरण के लिए शब्द दस्तावेज़) कष्टप्रद है। यदि आप एक कछुआ उपकरण (मैंने SVN और Mercurial की कोशिश की है) का उपयोग करने पर एक अच्छा समाधान यह है कि आप "विजुअल डिफ" का चयन कर सकते हैं जो आपको डॉकडिफ़ चुनने की अनुमति देता है। Docdiff के साथ आपको रंगों और सामानों के साथ सभी बदलाव देखने को मिलते हैं :-) मुख्य नुकसान यह है कि हर बार जब आप बदलाव करते हैं तो पूरा दस्तावेज़ फिर से शुरू हो जाता है (केवल परिवर्तन नहीं)। लेकिन यह देखते हुए कि पाठ दस्तावेज़ सामान्य रूप से विशाल नहीं हैं और यह स्थान संभवतः आपका मुख्य मुद्दा नहीं है, यह कोई समस्या नहीं है।

मुझे यकीन है कि आप कछुए के बिना डॉकडिफ़ का उपयोग कर सकते हैं, यह सिर्फ इतना है कि मैंने इसे आज़माया नहीं है।


हालांकि यह "कई संपादकों से ओवरराइटिंग के बदलाव" को स्वीकार नहीं करता है।
उमर कोहल

0

एक वैकल्पिक दृष्टिकोण है जिस पर आपको चर्चा करनी चाहिए: बीडीडी

कृपया निष्पादन योग्य विनिर्देशों के साथ व्यवहार प्रेरित विकास पर विचार करें। आपके विनिर्देशों को दी जाने वाली श्रृंखला में सरलीकृत किया जाता है - जब - तब बयानों के सेट जो पाठ फ़ाइलों में संग्रहीत होते हैं। ककड़ी या SpecFlow जैसे एक BDD टूल उन पाठ फ़ाइलों को निष्पादन योग्य परीक्षणों में परिवर्तित करता है, जो आपके बिल्ड टूल निष्पादित कर सकते हैं।

ककड़ी: http://cukes.info/ - रूबी के लिए बीडीडी

SpecFlow: http://www.specflow.org/ - .Net के लिए BDD

SpecFlow जैसे टूल के साथ वर्कफ़्लो के त्वरित डेमो के लिए, रोब कॉनरी के SpecFlow के माध्यम से चेकआउट करें: http://tekpub.com/view/concepts/5

अब, न केवल आप अपने कोड, बल्कि आपके विनिर्देशों, और आपके कंटीन्यूअस इंटीग्रेशन टूल (टीमकिट, क्रूज़कंट्रोल, हडसन, आदि) को लागू कर रहे हैं कि सभी विनिर्देश अभी भी हर निर्माण पर मान्य हैं ... क्या आप इसके लिए मूल्यवान हैं?

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