आपके पसंदीदा संस्करण नियंत्रण प्रणाली क्या हैं? [बन्द है]


41

यह "सर्वश्रेष्ठ" निर्धारित करने के लिए एक वास्तविक प्रयास से अधिक चर्चा का प्रश्न है, क्योंकि यह संगठन की आवश्यकताओं के अनुसार स्पष्ट रूप से भिन्न होता है। मैं श्रेणियों (केंद्रीकृत बनाम वितरित, खुली बनाम मालिकाना, आदि) में विभिन्न प्रणालियों के पक्ष में तर्कों के बारे में अधिक उत्सुक हूं।

तो, आपको क्या लगता है कि सबसे अच्छा संस्करण नियंत्रण प्रणाली है?


1
en.wikipedia.org/wiki/Comparison_of_revision_control_software वास्तव में इसके लिए एक महान तुलना तालिका है। चर्चा का प्रश्न ... सामुदायिक विकि?
क्रिस

4
पहला जो नाम पोस्ट करता है, उसे प्रतिनिधि मिलता है ... यह सामुदायिक विकि होना चाहिए।
टेकेशिन


यह पहले से ही एक सामुदायिक विकि नहीं है
टेकेशिन

जवाबों:


81

अस्थिर

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


मुझे कुछ समय पहले से ही मर्क्यूरियल को आज़माने के लिए मिला है क्योंकि मैंने पहले ही 2 बड़ी कोशिश की है 3. और चूंकि Google कोड इसका समर्थन करता है ...
TheLQ

2
यदि आप नेटबीन का उपयोग कर रहे हैं तो मर्क्यूरियल मीठा है। IDE एकीकरण सही है।
सेउन ओसवा

4
मैं मर्क्यूरियल को केवल इसलिए पसंद करता हूं क्योंकि TortoiseHg TortoiseGit :-) की तुलना में अधिक परिपक्व है (विंडोज़ पर संपूर्ण अनुभव भी Mercurial में बेहतर है)
डीन हार्डिंग

+1, मैं मर्क्युरियल बोल्ड और बड़ा करने का सुझाव (गौरव उसके जवाब में किया था के रूप में)
टिम पोस्ट

मर्क्यूरियल बहुत मीठा है। मैं और मेरी टीम लगभग 2 महीने से इसका इस्तेमाल कर रही है और एसवीएन की तुलना में यह ताजी हवा की सांस है।
गैरी विलोबी

72

Git

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

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


5
मुझे लगता है कि गिट कठिन है कहना महत्वपूर्ण है। मैं वास्तव में इसे प्यार करता हूं, लेकिन यह कुछ ऐसा नहीं है जिसे आप इसे कुछ दिनों में सीख सकते हैं। आपको इसे कुछ समय के लिए उपयोग करना होगा और जब तक आप स्विच नहीं करेंगे तब तक गुस्सा नहीं होगा ... ;-)
Khelben

1
@ किचेन - इसमें कुछ सच्चाई है, हाँ। हालाँकि, यह भी लगता है कि इसके लिए समर्पित नेट पर सबसे बड़ी मात्रा में साहित्य / लेख / ट्यूटोरियल हैं। मुझे नियमित रूप से Git की किताबें आती हैं, Mercurial - इतनी नहीं (Mercurial का उपयोग इसके विपरीत के रूप में, क्योंकि यह Git के समान कई मायनों में है)। यह नहीं कह सकते कि यह अच्छा है या बुरा, लेकिन ऐसा लगता है कि लोग इसका उपयोग कर रहे हैं।
रूक

2
Windows के तहत msysgit उपयोग करने योग्य है।

1
मुझे लगता है कि git, Mercurial आदि सभी काफी अच्छे हैं, लेकिन मैं git के लिए ज्यादातर गया क्योंकि auf GitHub। GitHub को तुलनीय साइटों की तुलना में अच्छा लगता है और कई महत्वपूर्ण परियोजनाओं की मेजबानी की जाती है। GitHub ओपन सोर्स को बहुत अधिक योगदान देने के लिए अवरोध को कम करता है।
लेनीप्रोग्रामर्स

2
मर्क्यूरियल को एक पुस्तक की आवश्यकता नहीं है।
वारेन पी

24

चेतावनी: इस पोस्ट के बाद से मुझे मर्क्यूरियल मिला है और यह SVN से बहुत बेहतर है। इसलिए यह पोस्ट प्रो SVN टिप्पणियों और सामान्य एंटी-डीवीसी के साथ थोड़ा पुराना है, लेकिन एंटी-गिट सामान अभी भी प्रासंगिक है


मैं Git से ज्यादा SVN का प्रशंसक हूं ।

क्यूं कर? क्योंकि SVN किसी एकल डेवलपर या छोटी टीम के लिए बहुत आसान था, और git (विशेष रूप से msysgit) ने मेरे मुंह में खराब स्वाद छोड़ दिया।

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

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

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

आपके पास बहुत सहायक डेटा नहीं है! ओह देखो, यह 14f74433245ae17aeeaa पेड़ का हिस्सा 2167a4934d0a4a7db0de और पैरेंट d7042abb4821d3faf600 है। नरक का मतलब क्या है? मुझे बहुत जल्दी चीजों का पता लगाने में सक्षम होना चाहिए और कुछ अजीब प्रलेखन से परामर्श नहीं करना चाहिए।

दस्तावेज़ीकरण की बात करें, तो कम से कम जब मैं इसका उपयोग कर रहा था, ऐसा लग रहा था कि सब कुछ लिनक्स मैन फ़ाइल प्रारूप में था, IE मुझे भ्रमित और बेकार कर रहा था। मैं शायद ही कभी डॉक्स में ज्यादा मदद पा सका और बस गूगल का सहारा लिया।

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

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


अब SVN को देखते हैं। और जब से मैं विंडोज पर हूं और एक Google खाता है, विशेष रूप से TortoiseSVN और Google कोड।

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

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

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

प्रलेखन? खैर, यह कहना मुश्किल है। कछुआ प्रलेखित है, लेकिन मैंने वास्तव में इतने लंबे समय तक आधिकारिक दस्तावेज का उल्लेख नहीं किया है कि मैं न्याय नहीं कर सकता। एक साधारण इंट्रो गाइड पढ़ना मेरे लिए काफी था।

विलय कुछ और है जिसकी मैं तुलना नहीं कर सकता। मुझे इसे एक बार Git में करना पड़ा था जब किसी और ने उस फ़ाइल में बदलाव किया था जिस पर मैं काम कर रहा था, लेकिन एसवीएन में कभी नहीं।


मैं किसे सलाह दूंगा? अच्छी तरह से बड़ी टीमों में, गिट के अपने फायदे हैं, मुख्य रूप से इसके गैर-रैखिक विकास चक्र में। एक अन्य परियोजना में मैंने देखा कि 4 प्रोग्रामर अलग-अलग शाखाओं में शुरू होते हैं, फिर सभी कोड को बहुत ही अजीब तरीके से मर्ज करते हैं जो किसी तरह अंतिम मास्टर शाखा में रूपांतरित हो जाते हैं। Github और msysgit के पास पूरे प्रोजेक्ट के लिए एक बहुत अच्छा विज़ुअलाइज़ेशन टूल था जो मुझे बहुत पसंद था।

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


6
एसवीएन के साथ विलय काफी जोखिम भरा है (तुलना के साथ)। यह एक बात है कि किसी भी तुलना पर ध्यान देना महत्वपूर्ण है।
खेलाबेन

5
आपको हर बार "पेजेंट लाने" की आवश्यकता क्यों है? यह एक प्रमुख एजेंट है। आपको केवल एक बार इसे ऊपर लाना होगा, जब आप अपनी मशीन पर लॉग इन करेंगे। आप अपने कुंजी जोड़ सकते हैं और आप कर रहे हैं किया । (और आप अपने कीफ़ाइल को पेजेंट के साथ जोड़कर और अपने स्टार्टअप फ़ोल्डर में जोड़कर इसे और भी आसान बना सकते हैं। लॉग ऑन करें, यह आपके पासफ़्रेज़ के लिए आपको संकेत देने वाले संवाद के साथ पॉप अप करता है।)
फ्रैंक शियरार

3
@Thorbjoern @Frank Shearer: मुझे लगता है कि आप कह रहे हैं कि "आप ऐसा कर सकते हैं, या आप ऐसा कर सकते हैं, और न ही उन मुद्दों पर प्रकाश डालते हैं:" यह समस्या का समाधान है या समस्या का समाधान है। यह कुछ अन्य वीसीएस के साथ एक गैर-मुद्दा है '।
स्टीवन एवर्स

4
यह जवाब मुझे बहुत शिकायत करता है और कुछ के बारे में विलाप करता है कि पोस्टर को स्पष्ट रूप से समझने में समय नहीं लगा। मैंने git और svn दोनों में, linux और windows दोनों में व्यापक समय बिताया है, और यह गवाही देगा कि git svn के मुकाबले कॉन्सेप्ट, डेटा मॉडल, अंडरएबिलिटी और यूटिलिटी से बेहतर है।
गहोआ

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

22

Q4TD की ओर से निम्नलिखित उद्धरण मेरे लिए बहुत अधिक है:

"जब तक मैंने कोशिश नहीं की, मुझे गित से प्यार था। अब मुझे मर्क्यूरियल बहुत पसंद है। ”

        - टोर नॉर्बी, द जावा पोज़ पॉडकास्ट

इसके अलावा, hgsubversion लिनक्स के लिए एक बहुत अच्छा तोड़फोड़ क्लाइंट बनाता है (जहां मैं आमतौर पर कमांड लाइन का उपयोग करता हूं, विंडोज के विपरीत जहां मैं आमतौर पर TortoiseSVN का उपयोग करता हूं)। सबसे बड़ा लाभ: .svnप्रत्येक फ़ोल्डर में कोई उप-फ़ोल्डर नहीं , बस .hgशीर्ष स्तर पर।

अद्यतन: टिप्पणियों में एलेक्स के अनुरोध के जवाब में "इस बारे में और अधिक कहने के लिए कि git ने आपके लिए काम क्यों नहीं किया, और मर्क्यूरियल कैसे बेहतर है":

मैं यह नहीं कहूंगा कि Git मेरे लिए काम नहीं करता है, लेकिन Murururial बेहतर IMO काम करता है।

संक्षेप में, यह मर्क्यूरियल है:

वैकल्पिक शब्द

और यह है Git:

वैकल्पिक शब्द

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

बेशक, मैंने केवल कभी-कभी Git का उपयोग किया है, लेकिन प्रोग्रामिंग समुदाय रूबी और पायथन जैसी भाषाओं में भाग ले रहा है, भाग में, उनकी सहमति और शान के लिए, जबकि Git एक ऊंट की तरह महसूस करता है जिसे ऊंटों की एक समिति द्वारा डिजाइन किया गया था।

बाह, अब देखो तुमने क्या किया है? वहाँ सब जगह शेख़ी है। साथ चलो, देखने के लिए कुछ नहीं ... देखने के लिए कुछ नहीं ...

अपडेट 2: और एक और एप्रोपोस ट्वीट मैं अभी आया:

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


कभी RabbitVCS की कोशिश की?
TheLQ

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

2
क्या आप इस बारे में अधिक कह सकते हैं कि git ने आपके लिए काम क्यों नहीं किया, और Mercurial ने कैसे बेहतर काम किया? यह पढ़ने के लिए बहुत दिलचस्प होगा।
एलेक्स फेइमैन

मैं कर रहा हूँ यकीन है कि Git चित्रण एक 6 "लंबे सीधे उस्तरा याद आ रही है ...
टिम पोस्ट

2
@ समय: रिबेस? यह शायद दूसरी तरफ है।
एलन पीयर्स

14

मेरे पास एक "सबसे अच्छा" संस्करण नियंत्रण प्रणाली नहीं है, बल्कि एक सबसे अच्छा वीसीएस प्रतिमान है।

मैंने कई अलग-अलग केंद्रीकृत संस्करण नियंत्रण प्रणालियों और कई अलग-अलग वितरित संस्करण नियंत्रण प्रणालियों का उपयोग किया है। और मैं बिना किसी हिचकिचाहट के कह सकता हूं कि किसी को कभी भी खुद पर एक सीवीसीएस नहीं डालना चाहिए।

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


3
यह एक बेहतरीन जवाब है। कोई भी "सर्वश्रेष्ठ" वीसीएस नहीं है, लेकिन मैं पूरी तरह सहमत हूं कि किसी को डीवीसीएस का उपयोग करना चाहिए।
निक हॉजेस

मेरा एक DVCS बनाओ, लेकिन होमबॉर्फिक एंडोफुन्क्टरों को एक हिल्बर्ट स्थान के उपमानों को मैप करने के लिए पकड़ो, कृपया। एर्गो, मर्क्यूरियल।
वारेन पी

11

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


7

मैं सबसे अच्छा नहीं कहूँगा, लेकिन एक बहुत ही दिलचस्प विशेषताओं और अवधारणाओं के साथ।

जीवाश्म एक वितरित संस्करण नियंत्रण, बग ट्रैकिंग और विकी प्रोजेक्ट है जिसे SQLite डेटाबेस पर रिपॉजिटरी के रूप में बनाया गया है।


5

टीम फाउंडेशन सर्वर

इसलिये:

  1. यह एक अच्छा, ठोस VCS है । (मैं इसे किसी भी तरह से सबसे अच्छा नहीं मानूंगा, लेकिन इसमें अच्छे एक्स्ट्रा कलाकार हैं।)
  2. विजुअल स्टूडियो में एकीकृत होने वाले टास्क और बग ट्रैकिंग में इसकी मदद से मैं निडर रह सकता हूं और यह जान सकता हूं कि मुझे एक ही जगह पर सभी काम करने की जरूरत है (स्वचालित रूप से बग या टास्क में चेक-इन को लागू करना और इसे बंद करना बहुत अच्छा है, हालांकि आप कर सकते हैं ऐसा करने के लिए अन्य प्रणालियों / ग्रहण / आदि के लिए प्लगइन्स प्राप्त करें।)
  3. यह कार्य / बग ट्रैकिंग / परियोजनाओं को सीधे प्रोजेक्ट सर्वर में एकीकृत करता है इसलिए मुझे शायद ही कभी परियोजना की योजना या टाइमशीट को रखना पड़ता है। प्रोजेक्ट सर्वर में प्रोजेक्ट के लिए अद्यतन स्वचालित रूप से TFS में और मेरे लिए Visual Studio में स्वचालित रूप से देखने के लिए कार्यों के रूप में फ़िल्टर करता है।

2
मैं उत्सुक हूं कि आपने अपने वर्कफ़्लो के बारे में यह महसूस किया कि विशेष रूप से बहुत सारे विकास कार्यों के लिए विशेष रूप से विज़ुअल स्टूडियो को सीमित किया जा रहा है। इसके अलावा, क्या आपको टीएफएस के लिए कोई इंफ्रास्ट्रक्चर सेटअप करना था? मेरा अनुभव इस तरह से आपके विपरीत था: # 1 - वीसीएस का उपयोग करना आसान नहीं था, अक्सर परतदार था, और ऑफ़लाइन मोड को स्वयं शैतान ने बनाया था। # 2 टास्क और बग ट्रैकिंग में निर्मित अन्य टूल की तुलना में बोझिल था, इसलिए # 3 हमारे लिए अप्रासंगिक था और डुप्लिकेट कार्य बनाया। मैंने इसे 3 बार अलग-अलग बार उपयोग किया है और हर बार एक ही बुरे परिणाम के साथ।
जॉर्डन

1. मैं ऑफ़लाइन मोड चूसने से सहमत हूं। हालाँकि, मुझे ऑनलाइन कई समस्याएं नहीं हुई हैं, लेकिन मैं हमेशा जुड़ा रहा हूँ। वीसीएस नियंत्रण के कई, विशेष रूप से फ़ोल्डर रीमैपिंग के साथ वास्तव में मेनू में गहरे छिपे हुए हैं। क्या यह समस्या आपको हो रही है? 2. यह निश्चित रूप से अधिक बोझिल है, लेकिन प्रोजेक्ट सर्वर के साथ एकीकृत मेरी टीम के लिए समग्र रूप से काम बचाता है। 3. यह डुप्लिकेट कार्य कैसे बनाता है? क्या आप प्रोजेक्ट सर्वर और TFS में कार्यों को दोहरा रहे हैं? 2007 के लिए एक खुला स्रोत प्लगइन है और 2010 के लिए एक बीटा है जो उन्हें एक दूसरे के साथ सिंक करने देता है।
रयान हेस

1
इसने मुझे वीएस के लिए बाध्य किया, लेकिन हम पूरी तरह से .NET शॉप हैं। मैं घर पर अपने Java प्रोजेक्ट्स के साथ TFS का उपयोग करता हूँ, हालाँकि। पर SVNBridge प्रयास करें svnbridge.codeplex.com की सहायता से आप TFS के साथ कछुआ का उपयोग करें। यदि आप कछुआ (ज्यादातर जावा, रूबी, गैर-.net लोगों की तरह) का उपयोग करते हैं, तो यह आपको अन्य परियोजनाओं में अपने वर्कफ़्लो के साथ मदद करनी चाहिए।
रयान हेस

4

मैंने अपने लंबे इतिहास में कई संस्करण नियंत्रण प्रणालियों का उपयोग किया है:

  • आरपीपीटी - (रोल्ड ऑफ पेपर पेपर टेप)। एक जूते के डिब्बे में। मैं मजाक नहीं कर रहा हु।
  • पीवीसीएस - (पॉलीट्रॉन संस्करण नियंत्रण प्रणाली)। पहला वास्तविक VCS जिसका मैंने उपयोग किया।
  • SCCS - इतनी देर पहले, मुझे इसके बारे में असाधारण रूप से अच्छा या बुरा कोई भी चीज याद नहीं है।
  • आरसीएस - जैसा कि दूसरों ने बताया है, बल्कि पसीने से तर-बतर गेंदों को चूसना होगा।
  • सीवीएस - यह केवल एक दर्द था जब 2 से अधिक प्रोग्रामर के साथ उपयोग किया जाता था। सबसे अच्छी सुविधा: rcs2cvs।
  • वीएसएस - यह काम करता है, सिवाय इसके कि मंगलवार को छोड़कर, जब यह आपके पूरे भंडार को नष्ट कर देता है।
  • Perforce - मेरी कार से अधिक खर्च होता है। वीसीएस ही स्वीकार्य है, लेकिन डिकहेड आईटी लोग जो इसका उपयोग करने के हर पहलू को नियंत्रित करते हैं, वह कभी भी मेरी "पसंदीदा" सूची में नहीं आएंगे।
  • एसवीएन - ब्रांचिंग और मर्जिंग एक कुतिया है, लेकिन सामान्य तौर पर यह पहले की तुलना में बेहतर है। समीक्षा के इंतजार में बहुत सारे छोटे बकाया बदलावों के साथ इतना अच्छा नहीं है।
  • मर्क्यूरियल - मुझे इसके साथ क्या कम अनुभव है, मुझे पसंद है। मैं इसे अपने अगले प्रोजेक्ट पर आज़मा सकता हूँ।
  • गिट - इसका उपयोग करने का अवसर कभी नहीं था।

हालाँकि एक दंपति भयावह थे, अधिकांश "ठीक" थे। वे मेरे रास्ते में नहीं आए। जब तक एक उपकरण मेरे जीवन को अधिक कठिन नहीं बनाता है , तब तक मैं वास्तव में बुरा नहीं मानता

असली बात प्रत्येक की ताकत और कमजोरियों को समझना है। लक्ष्य पर्यावरण को समझें:

  • वितरित या स्थानीय
  • छोटी टीम या बड़ी
  • होस्ट की गई vcs सेवा या नहीं
  • अन्य उपकरणों में आसान एकीकरण

जोएल भी एक महत्वपूर्ण अवलोकन के साथ सामने आया: जानें टूल और उपयोग का सही मॉडल। वह पराक्रमी की तरह व्यवहार करने के लिए जोरदार कोशिश कर रहा था।


1
यदि केवल वीएसएस पर टिप्पणी मजाक थी ... प्लेग की तरह बचें।
देवसोलो

आह, PVCS, यादें जो वापस लाती हैं :) जो कि कबाड़ का एक टुकड़ा था।
हेनरी

उस सूची ने मुझे "पैर में खुद को गोली मारना" आधारित भाषा की याद दिला दी। +1
परिक्रमा

मुझे SCCS के बारे में बुरी बातें याद हैं, लेकिन यह आमतौर पर प्रयोग करने योग्य था। मुझे याद है कि SCCS और अन्य प्रोग्रामर के साथ फाइलों पर एक साथ काम करने की कोशिश कर रहा था, और इसीलिए जब मैंने इसे देखा तो मुझे CVS से प्यार हो गया।
डेविड थॉर्नले

विजुअल सोर्ससेफ, ए वीसीएस विशेष रूप से प्रोग्रामर के लिए जो चम्मच से अपनी आंखों को बाहर निकालना चाहते हैं
मार्क बूथ

2

एक नई प्रणाली जो हम अपने कार्यालय में उपयोग करते हैं वह है प्लास्टिक एससीएम (http://www.plasticscm.com/)। यह हमारी छोटी टीम के लिए बहुत अच्छा काम करता है और हमें स्रोत प्रबंधन के हर पहलू पर कुछ बेहतरीन नियंत्रण देता है।


1

SCCS

या, यदि आप ऐसा नहीं करते हैं कि पिछले 38 वर्षों से एक गुफा रह रही है, तो CSSC

गंभीरता से, मेरी कंपनी TeamWare का उपयोग कर रही है , जो SCCS पर आधारित एक प्रकार का छद्म DVCS है।

नहीं, मैं मजाक नहीं कर रहा हूं।

सन ने कुछ साल पहले ही टीमवेयर से मर्क्यूरियल में कदम रखा। अब आपको यह समझना चाहिए कि जावा इतना धीमा क्यों लग रहा था।


1

एमपीडब्ल्यू: ठीक है, मैं वास्तव में अपने प्रयासों के बावजूद इसकी समीक्षा नहीं कर सकता।

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

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

यह वीसी के साथ मेरा पहला ब्रश था, और पिछले लंबे समय से अच्छा था। अब मैं हर चीज के लिए git का उपयोग करता हूं।


प्रोजेक्टर! कॉलेज के दौरान एक पार्ट टाइम जॉब में मैंने (ट्रिक आउट) उस संस्करण का उपयोग किया। अच्छा समय।
रयानविल्कॉक्स

0

आरसीएस - रिविजन कंट्रोल सिस्टम

सोलो कोडिंग इतनी आसान बना दी।


आप मजाक कर रहे हैं, सही Xepoch? कृपया भगवान मजाक कर रहे हैं।
मार्क डब्ल्यू

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

1
@Xepoch, आप Git या Mercurial सीखने से बेहतर हो सकते हैं- DCVS एकल विकास के लिए बहुत अच्छा काम करता है।
फिशटोस्टर

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

@Xepoch, वितरित वीकेएस का बैकअप लेने में आसानी अपराजेय है।

0

ClearCase नहीं, कम से कम एक यूनिक्स / लिनक्स सिस्टम के लिए (शायद विंडोज इंस्टॉलर आसान है)। हमारे ClearCase सर्वर को अपग्रेड करने के बजाय, एक नया टूल, Perforce सीखना आसान था।

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


0

मैंने Visual SourceSafe का उपयोग किया है और इससे घृणा की है, लेकिन यह कुछ भी नहीं, बल्कि बहुत से बेहतर था। पिछले कुछ वर्षों के लिए, Qumasoft.com द्वारा QCVS नामक कुछ का उपयोग किया गया, जो जिम वोरिस प्रोग्रामर द्वारा लिखित, स्वामित्व और समर्थित है। सरल गुई, सस्ती कीमत, अच्छा समर्थन।

बस काम करता है।

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