version control - आप 1000+ डेवलपर संगठन के लिए किस संस्करण नियंत्रण प्रणाली का उपयोग करेंगे? क्यूं कर?




version-control dvcs (20)

वहां कई एससीएम सिस्टम हैं कुछ खुले, कुछ बंद, कुछ मुफ्त, कुछ काफी महंगा। कौन सा (केवल एक चुनिए) क्या आप कई साइटों के साथ एक 3000+ डेवलपर संगठन के लिए उपयोग करेंगे (कुछ बहुत धीमे लिंक के पीछे)? समझाएं कि आपने जो चुना है उसे चुना है। (कुछ कारण बताएं, न सिर्फ "क्योंकि"।)


1000+ श्रमिकों के साथ कुछ कंपनियों पर काम करने के बाद, मैंने पाया है कि बड़े-बड़े, वे सभी का उपयोग करें प्रभाव।

मैंने पूछा है "आप कुछ और क्यों नहीं इस्तेमाल करते हैं? एसवीएन? गिट? मर्क्यूरिअल? डार्कस?" - और उन्होंने कहा है कि (ये सभी कंपनियों के लिए यही है) - जब उन्होंने निर्णय लिया निष्पादन, यह या तो, या SourceSafe, या सीवीएस - और ईमानदारी से, उन तीन विकल्पों को दिया, मैं भी साथ में जाना था, भी।

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

डेवलपर के उपयोग के लिए प्रबलबल में कई एपीआई हुक हैं, और एक केंद्रीकृत प्रणाली के लिए, इसे बहुत सारे चुट्ज़पा मिल गया है।

मैं यह नहीं कह रहा हूं कि यह सबसे अच्छा समाधान है- लेकिन मैंने कम से कम कुछ बड़ी कंपनियों को देखा है, जहां परफ़ेंस काम करता है, और अच्छी तरह से पर्याप्त है कि यह लगभग सर्वव्यापी है


Adobe Perforce का उपयोग करता है


अगर वे सभी एक ही उत्पाद पर काम कर रहे हैं, शायद असफल

अगर बहुत छोटी परियोजनाएं हैं (2 से 50), तो मैं कई सबवर्जन (एसवीएन) बक्से चलाऊँगा।


किसी भी डीवीसीएस (बिटकापीर, जीआईटी, बाजार, मर्क्यूरीयल, आदि) वितरित होने के कारण केंद्रीय 'कैनोनिकल' एससीएम सर्वर पर भार घटा दिया जाएगा चेतावनी यह है कि वे काफी नई तकनीक हैं और बहुत से लोग अपने उपयोग से परिचित नहीं होंगे

यदि आप पुराने, केंद्रीकृत मॉडल से चिपके रहना चाहते हैं, तो मैं परामर्श करने की सलाह देता हूं यदि आप इसे खरीद सकते हैं, या सबवर्जन अगर आप Perforce के लिए भुगतान नहीं करना चाहते हैं। मैं सीवीएस से ऊपर की तरंगों की सिफारिश करता था, क्योंकि इसे उपयुक्त बनाने के लिए पर्याप्त सुविधाएं मिलती हैं लेकिन यह बहुत समान है कि जो पहले से ही सीवीएस जानते हैं, वे अब भी सहज होंगे।


गिट को लिनक्स कर्नेल के लिए लिखा गया था, जो ऐसी स्थिति का सबसे निकटतम उदाहरण हो सकता है जिसे आप सार्वजनिक जानकारी प्राप्त कर सकते हैं।


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

[अफवाह] मैंने सुना है कि माइक्रोसॉफ्ट ने इसे विस्टा के लिए इस्तेमाल किया है। [/ अफवाह] जाहिर है यह उनके लिए एक अनुकूलित संस्करण था, लेकिन यह उस से ज्यादा बड़ा नहीं मिलता है


मजबूर एक सभ्य प्रणाली है, और अच्छी तरह से तराजू है।

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

इसके अतिरिक्त, इसमें विंडोज़, मैक और यूनिक्स के लिए अच्छा कमांड लाइन और अच्छा स्क्रिप्ट समर्थन शामिल है।

मैंने सीवीएस का उपयोग पहले किया है, और यह लगभग 25-50 इंजीनियरों (ज्यादातर परमाणु संचालन और प्रदर्शन की वजह से) से अधिक समूहों को अच्छी तरह से नहीं बढ़ाता है


मैं git कहना चाहता हूँ, लेकिन नहीं लगता कि उस आकार की कंपनी सभी लिनक्स (जीआईटी के लिए विंडोज़ समर्थन अभी भी बेकार है) होने जा रही है। इसलिए एससीएम के साथ चलें जो जीआईटी के पहले लिखेक्स का इस्तेमाल होता है


मैं वास्तव में टीम फाउंडेशन सर्वर की जांच करूँगा यह एक बहुत अच्छी प्रणाली है जो स्केल कर सकता है और आंतरिक विभागों के माध्यम से प्राप्त करना संभवतः आसान है। मुझे पता है कि यह विंडोज केंद्रित है लेकिन आप लिनक्स / मैक के लिए ऐड-ऑन का भी उपयोग कर सकते हैं और आप धीमे कनेक्शन के साथ कुछ साइटों के लिए प्रॉक्सी का उपयोग कर सकते हैं।

और मैं एक बड़े संगठन में 2 सिस्टम होने के बारे में सोचूंगा, यह कुछ अलग-अलग मामलों में सबसे अच्छा पाने में मदद कर सकता है।


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

निजी तौर पर मैं एसवीएन के लिए तय करेगा, मैं कई सैकड़ों देवों के साथ एक आईटी डिपार्टमेंट पर हूं और बेहतर स्रोत नियंत्रण ऐप एसवीएन है

:)

// डब्ल्यू


यदि आपके पास ऐसे बड़े संगठन हैं तो एक विशिष्ट एससीएम को जनादेश नहीं दें।

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

(आपको कुछ प्रशिक्षण प्रदान करने की आवश्यकता हो सकती है, ताकि समझें कि गिट, एसवीएन, कुछ आंतरिक विरासत प्रणाली के बीच कैसे चयन किया जाए।)


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

सबवर्सन वास्तव में आसान है, सीवीएस से बेहतर है

मैं git की सिफारिश की है अगर केवल अपने विंडोज़ समर्थन बेहतर था


सीवीएस का उपयोग न करें !! यदि आप सीवीएस मॉडल चाहते हैं तो सबवर्सन एक बेहतर विकल्प है।


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

मैं प्रबल के लिए वोट


मैं AccuRev का उपयोग करेगा मैंने एसवीएन, सीवीएस, स्पेसकेस (आधार, यूकेएम), सीसीसी / फसल का इस्तेमाल किया है, लेकिन उनमें से कोई भी एक्विइव की शक्तियों को नहीं हरा सकता है "कई साइट के साथ 3000+ डेवलपर संगठन"? आप उस के लिए एक्काइवर वितरित समाधान (एक्वाप्रोपिका) का उपयोग कर सकते हैं - जिसका मतलब है कि आपके पास एक मास्टर सर्वर है और आप रिमोट साइटों पर प्रतिकृतियां चाहते हैं (इसलिए "धीमी लिंक" वाले लोगों को बहुत नुकसान नहीं होगा)

सभी के ऊपर AccuRev एक अनोखी दृष्टिकोण लाता है - स्ट्रीम-आधारित एससीएम उपकरण का वास्तव में एक नया अवधारणा / डिजाइन / कार्यान्वयन नहीं (खराब) तरीके से ClearCase-UCM ने ऐसा किया (क्योंकि ClearCase "धाराओं" अंततः शाखाएं थे), लेकिन आधुनिक तरीके से आधुनिक।

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


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

आंतरिक रूप से कुछ समूह अपने उत्पादों में उपयोग करने के लिए अन्य समूहों को रिलीज़ करते हैं; यह एक एससीएम प्रणाली के माध्यम से प्रबंधित नहीं है

हमारे अपने समूह का अपना एससीएम है, लेकिन केवल 25 सक्रिय डेवलपर्स हैं हम सीवीएस का उपयोग करते हैं, और काफी ईमानदार होने के लिए यह वास्तव में नहीं है (हम माइग्रेट करते हैं, लेकिन बहुत सारी स्क्रिप्ट / हुक और अन्य बिट्स और टुकड़े हैं जिन्हें बदलने के लिए बहुत काम की आवश्यकता होती है)। उचित आकार कोड बेस पर सीवीएस का प्रयोग करने में समस्या यह है कि कई ऑपरेशन बहुत धीमे हैं और इसमें अन्य डेवलपर्स को लॉक करने में शामिल है।


चलिए विकल्पों को देखते हैं

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

2 - एसवीएन के रूप में अच्छी तरह से बड़ी टीमों द्वारा उपयोग किया जाता है, KDE वर्तमान में 880,000 (हां!) संशोधन (विशाल, विशाल परियोजना) का उपयोग करता है Windows और Linux दोनों के लिए बहुत व्यावहारिक (हालांकि मैं कुछ पहलुओं में औसत से नीचे टोर्टोइज़ एस वी एन को कॉल करता हूं) वाणिज्यिक समर्थन अनुबंधित किया जा सकता है भी। विंडोज / लिनक्स / मैक के लिए अच्छा भी है

3 - Accurev अगर मैं "edgy" होने की कोशिश कर रहा था मैं इसे पूरी कंपनी पर कुछ परीक्षण के बिना तैनात नहीं करता था और इसे पहली बार इस्तेमाल कर रहा था।

4 - एमएस टीम फाउंडेशन यह एक अच्छा समाधान हो सकता है लेकिन मैंने कभी कोशिश नहीं की और संभवत: केवल विंडोज़ है

5 - जीआईटी / बीजर / एचजी - बीजर और एचजी के पास अपने "कछुए" हैं, इसलिए विंडोज के लिए अच्छा (भले ही मुझे परिपक्वता के बारे में निश्चित न हो) Git केवल समय के लिए लिनक्स होगा, हालांकि यह बहुत अच्छी है (और कुछ साल पहले की तुलना में बेहतर और आसान है)।

मैं कभी नहीं, कभी, पूरी तरह से कोई रास्ता नहीं जोस Clearcase का उपयोग करें अवधि यह हर किसी के पैसे और समय और विवेक की बर्बादी है।

इसके बारे में स्पष्ट: सीवीएस / कस्ट्रेस / पुराने कुछ भी


  • ऐसी बड़ी स्थापना के लिए, कम से कम निम्नलिखित प्रमुख आवश्यकताएं हैं: डेटा सुरक्षा , परिपक्वता, दृढ़ता, स्केलेबिलिटी , मूल्य (प्रति सीट लाइसेंस बनाम ओपन सोर्स हमेशा प्रति सीट पर ध्यान दिए बिना एक बड़ा अंतर बनाता है), प्रशासन में आसानी
  • मुझे लगता होगा कि तोड़फोड़ सिर्फ ठीक होगा।
  • समर्थन उपलब्ध है ( कोलाबनेट , स्पेयरविजन , वंडस्को और अन्य) से। आप उनसे पूछ सकते हैं कि क्या उपकार आपके कार्य को संभालने में सक्षम होगा।
  • तोड़फोड़ में एक बहुत ही परिपक्व डेटाबेस बैकएंड है - एफएसएफएस यह बिल्कुल चट्टान ठोस है और 1.5 के बाद से यह प्रदर्शन में गिरावट के बिना वास्तव में कई संशोधनों को संभाल सकता है। संशोधन एक फ़ाइल सिस्टम में लिखे गए हैं। इसलिए आपके सबवर्सियन रिपॉजिटरी की विश्वसनीयता आपके फाइल सिस्टम, ओएस और स्टोरेज सिस्टम की गुणवत्ता पर निर्भर करती है।
  • यही कारण है कि मैं फाइल सिस्टम के रूप में ZFS के साथ सोलारिस 10 का सुझाव दूंगा । ZFS वास्तव में उत्पादन प्रणालियों के लिए महान फ़ाइल सिस्टम सुविधाएँ है लेकिन इससे ऊपर यह डेटा अखंडता चेकसमिंग प्रदान करता है। तो उपखंड रिपॉजिटरी में स्रोत कोड की इस राशि के साथ आपको एक हार्ड ड्राइव बिट त्रुटि या नियंत्रक या केबल बिट त्रुटि के कारण रिपॉजिटरी भ्रष्टाचार के बारे में चिंता करने की आवश्यकता नहीं होगी। अब तक ZFS पर्याप्त परिपक्व है कि इसे यूएफएस के रूप में सुरक्षित रूप से इस्तेमाल किया जा सकता है या जो भी प्रतिस्थापन
  • मुझे हार्डवेयर की आवश्यकताओं के बारे में नहीं पता है शायद कॉलबैनेट आपको सलाह दे सकता है
  • लेकिन वास्तव में एक अच्छी शुरुआत (जिसे एनएफएस भंडारण या बैकअप भंडारण के रूप में इस्तेमाल किया जा सकता है अगर यह बहुत धीमा हो जाता है - आप निश्चित रूप से इसका अच्छा उपयोग करने में सक्षम होंगे) एक दूसरी पीढ़ी के थम्पर होगा , यानी सन फायर X4540 सर्वर : आप 80,000 डॉलर के लिए एक अच्छा 4U रैक सर्वर के भीतर (सभी सूची मूल्य - यह संभावना परोक्ष होगा) हो सकता है: 48 टीबी डिस्क स्थान !, 8 AMD Opteron CPU कोर, 64 जीबी रैम, सोलारिस 10 प्रीइंस्टॉल्ड, 3 साल प्लैटिनम सूर्य से सॉफ्टवेयर और हार्डवेयर समर्थन तो इस सर्वर के लिए केवल हार्डवेयर और समर्थन मूल्य आपके 3000 डेवलपर्स की प्रति सीट 25 डॉलर होगी।
  • वास्तव में महान डेटा सुरक्षा को आश्वस्त करने के लिए, आप 48 हार्ड ड्राइव को निम्न प्रकार से विभाजित कर सकते हैं: ऑपरेटिंग सिस्टम के लिए 3 ड्राइव (3-रास्ता रेड -1 मिरर), 3 गर्म पुर्जों (उपयोग नहीं किया जाता है, विफलता के मामले में स्टैंड-बाय पर अन्य ड्राइवों में से), उपविभाग भंडार के लिए 14 3-रास्ता रेड 1 दर्पण (14 * 3 = 42 ड्राइव्स) का एक zfs पूल। यदि आप केवल 14% टीबी जेडएफएस रेड स्पेस को 80% से भरना चाहते हैं तो यह रिपॉज़िटरी के लिए लगभग 10 टेबिबाइट असली प्रयोग करने योग्य डिस्क स्थान होगा, अर्थात प्रति डेवलपर 3 जीबी का औसत
  • इस कॉन्फ़िगरेशन के साथ: 10 TiB 3-रेड-रेड-1 जेडएफएस रिडंडंट और चेकस्मीड डिस्क स्पेस के साथ सूर्य x4540 थंबर पर सबवर्जन 1.6 वास्तव में एक गंभीर शुरुआत होनी चाहिए।
  • यदि कंप्यूट पावर 3000+ डेवलपर्स के लिए पर्याप्त नहीं है, तो आप एक बीफियर सर्वर खरीद सकते हैं जो थंबर की डिस्क स्पेस का उपयोग कर सकता है। यदि डिस्क प्रदर्शन बहुत धीमा है, तो आप कंप्यूट सर्वर पर फास्ट स्केसी ड्राइव की एक विशाल सरणी को हुक कर सकते हैं और बैकअप समाधान के रूप में थंबर का उपयोग कर सकते हैं।
  • निश्चित रूप से, यह इस सबवर्सियन सर्वर की योजना और तैनाती के संबंध में कोलाबनेट से परामर्श सेवाएं प्राप्त करने और सूर्य से हार्डवेयर और सौर ऊर्जा ऑपरेटिंग सिस्टम के लिए प्लैटिनम समर्थन प्राप्त करने का अर्थ होगा।
  • संपादित करें (टिप्पणी # 1 का उत्तर): वितरित टीमों के लिए एक मास्टर-गुलाम कॉन्फ़िगरेशन की संभावना है : WebDAV-Proxy प्रत्येक स्थानीय टीम में एक गुलाम सर्वर होता है, जो रिपॉजिटरी की प्रतिकृति करता है। डेवलपर्स इस दास से सभी चेकआउट प्राप्त करते हैं। चेकइन को गुलाम से मास्टर तक पारदर्शी रूप से अग्रेषित किया जाता है। इस तरह, मास्टर हमेशा चालू होता है। ट्रैफ़िक का विशाल बहुमत चेकआउट है: हर डेवलपर के पास प्रत्येक चेकक को हर डेवलपर के पास किया जाता है। इसलिए चेकआउट ट्रैफ़िक 99.97% यातायात के साथ 3000 डेवलपर्स होना चाहिए। यदि आपके पास 50 डेवलपर्स के साथ एक स्थानीय टीम है, तो चेकआउट ट्रैफ़िक को 98% कम कर दिया जाएगा। चेकइन कोई समस्या नहीं होनी चाहिए: कोई भी नया कोड कितनी तेजी से टाइप कर सकता है? जाहिर है, एक छोटी सी टीम के लिए आप एक थंबर नहीं खरीदेंगे आपको बस पर्याप्त हार्ड डिस्क स्पेस के साथ एक बॉक्स की आवश्यकता है (यानी यदि आप छेद रिपॉजिटरी 10TB को पकड़ना चाहते हैं) यह एक raid5 कॉन्फ़िगरेशन हो सकता है क्योंकि डेटा हानि कंपनी का अंत नहीं है। आपको सोलारिस की आवश्यकता नहीं होगी आप उस पर लिनक्स डाल सकते हैं यदि स्थानीय लोग इसके साथ अधिक आरामदायक होंगे। दोबारा: Collabnet जैसे एक सलाहकार से पूछें अगर यह वास्तव में एक ध्वनि अवधारणा है कई सीटों के साथ यह एक बार परामर्श के लिए भुगतान करने में कोई समस्या नहीं होनी चाहिए। वे पूरी बात सेट कर सकते हैं सूर्य सौर-पूर्व के साथ बॉक्स डिलीवर करता है। आपके पास सूर्य का समर्थन है तो आपको साइट पर सौर मंडल गुरु की आवश्यकता नहीं होगी, क्योंकि अगले वर्षों तक कॉन्फ़िगरेशन में बदलाव नहीं होना चाहिए। इस विन्यास का मतलब है कि
    • टीम से मुख्यालय तक की धीमी रेखा को निरर्थक चेकआउट डेटा से भरा नहीं जाएगा और
    • स्थानीय टीम के सदस्य अपने चेकआउट को जल्दी से प्राप्त कर सकते हैं
    • यह थंबर पर लोड को नाटकीय रूप से कम करेगा - इसका मतलब है कि उस विन्यास के साथ आपको चिंता करने की ज़रूरत नहीं है कि थंबर लोड को संभालने में सक्षम है या नहीं
    • यह बैंडविड्थ लागत को कम करता है
  • संपादित करें (एम 3000 के रिलीज़ होने के बाद): पागल डेटा अखंडता के प्रति और भी बहुत अधिक चरम हार्डवेयर कॉन्फ़िगरेशन एक एम 3000 सर्वर और एक J4500 सरणी का संयोजन होगा:
    • J4500 स्टोरेज एरे व्यावहारिक तौर पर एक थंबर है, लेकिन सीपीयू-पावर और बाह्य भंडारण इंटरफेस के बिना जो इसे किसी सर्वर से कनेक्ट करने में सक्षम बनाता है।
    • M3000 सर्वर उच्च अंत आरएएस सुविधाओं के साथ एक midrange कीमत पर एक स्पार्क 64 सर्वर है। अधिकांश डेटा पथ और यहां तक ​​कि सीपीयू रजिस्टरों को चेकसमेड किया जाता है, आदि। रैम केवल ईसीसी संरक्षित नहीं है लेकिन आईबीएम चिपकिल सुविधा के बराबर है: यह मेमोरी पर छापे: न केवल एक बिट त्रुटियों का पता लगाया और सही किया गया है, लेकिन पूरी मेमोरी चिप विफल हो सकते हैं पूरी तरह से तब तक कोई डेटा नहीं खोया जाता है - छापे के arrays में हार्ड ड्राइव को विफल करने के समान।
    • जैसा कि ZFS फाइल सिस्टम डेटा से पहले आने से पहले सीपीयू-आधारित त्रुटि चेकसमिंग करता है, या उसके बाद सीपीयू पर जाता है, भंडारण नियंत्रक की गुणवत्ता और J4500 की केबलिंग महत्वपूर्ण नहीं है। एम 3000 सीपीयू, मेमोरी, मेमरी कंट्रोलर आदि की बिट त्रुटि की रोकथाम और पहचान क्षमताएं क्या हैं I
    • दुर्भाग्य से, उच्च गुणवत्ता मेमोरी स्टिक सूरज गुणवत्ता में सुधार करने के लिए उपयोग कर रहा है और यह बहुत महंगा है कि चार कोर (आठ धागे) 4GB राम एम 3000 + 48 टीबी J4500 का संयोजन थंबर के बराबर होगा, लेकिन यदि आप सर्वर मेमोरी को 4 जीबी से 8, 16 या 32 जीबी के लिए मेमोरी कैशिंग प्रयोजनों में बढ़ाना है, कीमत तेजी से बढ़ जाती है लेकिन वितरित टीमों के मास्टर-गुलाम कॉन्फ़िगरेशन का उपयोग करने के लिए संभवतः 4 जीबी कॉन्फ़िगरेशन भी पर्याप्त होगा।
    • यह हार्डवेयर संयोजन एक विचार के लायक होगा यदि इस 3000 डेवलपर रिपॉजिटरी की स्रोत कोड और डेटा अखंडता प्रबंधन द्वारा बेहद महत्वपूर्ण है। फिर यह दो या अधिक ठंपरों को घूर्णन बैकअप समाधान के रूप में जोड़ने का मतलब भी होगा (हार्डवेयर विफलता के खिलाफ की रक्षा के लिए आवश्यक नहीं, बल्कि प्रशासक गलतियों या भौतिक दूतावासों के मामले में ऑफ-साइट बैकअप के विरुद्ध सुरक्षा के लिए)।
    • चूंकि यह एक स्पार्क होगा और एक्स 86 समाधान नहीं होगा, इस प्लेटफार्म के लिए स्वतंत्र रूप से उपलब्ध कॉलबैनेट सबवर्जन बायनेरीज़ प्रमाणित हैं।
  • तोड़फोड़ के फायदों में से एक भी उत्कृष्ट दस्तावेज है: ओरेली ( वर्जन नियंत्रण विथ सब वर्जन ) से एक उत्कृष्ट पुस्तक भी पीडीएफ या एचटीएमएल संस्करण के रूप में मुफ्त में उपलब्ध है।
  • इसे एकत्र करने के लिए: संयोजन सबवर्सन 1.6 + सोलारिस 10 + 3-वे-रेड-1 बेमानी के साथ और स्थानीय टीमों के लिए ZFS + थंबर + मास्टर-स्लेव सर्वर रेप्लस चेक किया गया है + सन समर्थन + कोलाबनेट / स्पेयरविज़न / याकैवेर / कार्ल वोगेल परामर्श + सभी डेवलपर्स के लिए उत्कृष्ट और नि: शुल्क उपसंहार मैनुअल आपको समाधान प्रदान करना चाहिए जो प्रदान करता है
    • बेहद उच्च डाटा सुरक्षा (बहुत अधिक स्रोत कोड के लिए बहुत महत्वपूर्ण - आप अपनी रिपॉजिटरी को भ्रष्ट नहीं करना चाहते हैं, बिट त्रुटियां होती हैं, हार्ड ड्राइव विफल होते हैं!) आपके पास एक मास्टर डेटा रिपॉज़िटरी है, जो आपके सभी संस्करणों / संशोधनों को वास्तव में विश्वसनीय ढंग से रखती है: स्रोत नियंत्रण प्रणाली की मुख्य विशेषता
    • परिपक्वता - सबवर्जन का उपयोग कई, कई कंपनियों और ओपन सोर्स परियोजनाओं द्वारा किया गया है।
    • स्केलेबिलिटी - मास्टर-स्लोव प्रतिकृति के साथ आपको मास्टर सर्वर पर लोड समस्या नहीं होनी चाहिए: चेकिन का भार नगण्य है। चेकआउट दास द्वारा नियंत्रित किया जाता है
    • धीमी कनेक्शन के पीछे स्थानीय टीमों के लिए कोई उच्च विलंब नहीं (प्रतिकृति के कारण)
    • एक कम कीमत: उपखंड मुक्त (कोई प्रति सीट शुल्क नहीं), उत्कृष्ट मुफ्त दस्तावेज, तीन साल की अवधि में केवल 8 डॉलर प्रति वर्ष प्रति वर्ष हार्डवेयर और मास्टर सर्वर के लिए समर्थन लागत, गुलामों के लिए सस्ते लिनक्स बक्स, एक बार से परामर्श कोलाबनेट एट अल, मास्टर-गुलाम-प्रतिकृति की वजह से कम बैंडविड्थ लागत
    • प्रशासन की आसानी: मुख्य सर्वर का मूलतः कोई प्रशासन नहीं: उलटा सलाहकार सब कुछ तैनात कर सकता है सूर्य का कर्मचारी दोषपूर्ण हार्ड ड्राइव को स्वैप करेगा, आदि। लिनक्स लिनक्स बक्से हो सकते हैं या स्थानीय साइटों पर जो भी प्रशासन कौशल उपलब्ध हैं। उत्कृष्ट उपसंहार दस्तावेज़ीकरण

सारांश: जिन प्रणालियों के पास मेरे पास जीआईटी के साथ निजी अनुभव था, वह इसे सबसे अच्छे से संभाल सकेगा I

विवरण:

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

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

जब तक आप अतीत में विकृत नहीं होते हैं और वहां फंसे होते हैं मैं आरसीएस या सीवीएस की सिफारिश नहीं करता। उनके पास अच्छे बिंदु थे, लेकिन अधिक आधुनिक संस्करण नियंत्रण प्रणालियों की तुलना में उनके पास उन्हें सुझाए जाने के लिए कुछ नहीं है

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

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

एसवीके ने हमारी "धीमी साइटों" के लिए बेहतर काम किया (और काफी अधिक "पृथक कार्य" की अनुमति दी) यह जटिल मर्ज के लिए बहुत बेहतर काम करता है तो एसवीएन एसवीके को अब तक बनाए रखा नहीं गया है, अन्यथा मैं इसे सुझाऊंगा।

गिट एक बड़ा उद्यम है जो गंभीरता से विचार करने के लिए अपेक्षाकृत युवा है, लेकिन इसके अलावा ...

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

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

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

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

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

1000+ डेवलपर्स वाले कंपनी में कॉरस का मैं सुझाव देता हूं कि आप जो भी स्रोत कंट्रोल सिस्टम का इस्तेमाल करते हैं उसका समर्थन अनुबंध प्राप्त करें। Git के लिए मैं github पर दिखेगा: fi


मैं किसी भी एससीएम का उपयोग करता हूं जिसमें निराशावादी लॉकिंग नहीं है ( http://old.davidtanzer.net/?q=node/118 ) तंत्र खासकर क्योंकि आप चाहते हैं कि लोग एक ही फाइल को एक ही समय में किसी भी बड़े आकार के परियोजना में "संपादित" कर सकें।

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

अन्य विकल्पों में "जीआईटी" शामिल हो सकता है, जो कि लिनक्स कर्नेल लोगों का इस्तेमाल करते हैं, लेकिन मेरे पास वास्तव में उसके साथ कोई अनुभव नहीं है।







dvcs