2011-03-01 17 views
10

वितरित टीमों के साथ बड़ी परियोजनाओं के लिए गिट के साथ पारंपरिक एससीएम उत्पाद (क्लीयरकेस, एक्वाआरव, पर्सफोर्स इत्यादि) का उपयोग करने के मूल्य (या इसकी कमी) में मुझे रूचि है (या इसकी कमी)।ClearCase, AccuRev या Perforce के साथ गिट का उपयोग करने का मूल्य?

क्या टीम गतिविधियों में बढ़ती दृश्यता के मामले में कोई महत्वपूर्ण मूल्य-जोड़ है? शाखाकरण और विलय का नियंत्रण? अभिगम नियंत्रण और सुरक्षा? रिलीज इंजीनियरिंग? अन्य कारक?

या क्या यह खुद गिट के लिए बेहतर है? या क्या कोई ओपन सोर्स एससीएम है जो ऊपर उल्लिखित वाणिज्यिक उत्पादों के बराबर होगा?

धन्यवाद।

+0

जब तक आप सीसी/SVN/ख़ामख़ाह, आदि में स्थानीय लॉग संदेशों को आगे बढ़ाने के लिए कुछ जादू प्रणाली का आविष्कार, आप इतिहास कम करने के लिए जब आप अपने केंद्रीकृत प्रणाली है, जो बुरा लगता में Git से सिंक जा रहे हैं। (इसके अलावा, आप क्यों ऐसा करना चाहते हैं?) –

उत्तर

6

कुछ सिस्टमों के रूप में उपयोग करें जिन्हें आप दूर कर सकते हैं। यदि आपको अकेले गिट के अलावा किसी अन्य चीज़ का उपयोग करने में कोई फायदा नहीं दिखता है, तो केवल गिट का उपयोग करें।

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

2

साफ़केस या एसवीएन के साथ गिट को एकीकृत करना कुछ ऐसा नहीं है जो मैं इस समय की तलाश में हूं, मुख्य रूप से क्योंकि एक गिट रेपो पारंपरिक केंद्रीकृत रिपोज़ की तुलना में उसी प्रकार के डेटा (बाइनरी) या वॉल्यूम (फाइलों का आकार/आकार) नहीं रख सकता है ।
"What are the Git limits?" देखें।

मैं एक कॉर्पोरेट क्लियरकेस-एसवीएन पर्यावरण में अभी-अभी एक अकेले विकल्प के रूप में गिट पेश करने की कोशिश कर रहा हूं।

जबकि गति, निजी प्रतिबद्ध और मर्ज सुविधाओं की बहुत सराहना कर रहे हैं, मैं की अवधि में वास्तविक मुद्दों को हल करने के लिए कहा रहा हूँ:

  • केंद्रीकरण: केंद्रीय खजाने अभी भी mandatories कर रहे हैं, के लिए संदर्भ के रूप में कार्य करने के लिए कई टीमों को
  • मॉड्यूलर उनके कोड सिंक्रनाइज़ करने के लिए: सिर्फ एक Vob (ClearCase) या एक सबवर्सन रेपो बना सकते हैं और उसमें जो कुछ डाल शुरू करने के लिए कोई रास्ता नहीं है: प्रत्येक Git रेपो ज्यादा करने के क्रम में ठीक कणों का होने की जरूरत है टैगिंग या ब्रांचिंग करते समय एक सुसंगत मूल्य जोड़ें (वे सेशन erations सभी गिट repo चिंता, कहा रेपो के भीतर एक उपनिर्देशिका नहीं)।
  • प्रमाणीकरण: प्रत्येक उपयोगकर्ता एक LDAP में संदर्भित है और मैं आदेश कम से कम एक के लिए में prereceive हुक साथ आने के लिए सही user.name config के साथ बनाया प्रतिबद्ध जरूरत है (यानी एक user.name LDAP में आम नाम cn के बराबर हमारी कंपनी के)। (gitolite script 'contrib/update.email-check' की तरह थोड़ा, लेकिन user.name के लिए, ईमेल के लिए नहीं)।
  • सही पहुंच: gitolite उन केंद्रीय रिपो के लिए बहुत सटीक एसीएल प्राप्त करने के लिए यहां एक बड़ी सहायता है।
    लेकिन एसएसएच निजी/सार्वजनिक कुंजी का उपयोग करने का अर्थ है पास-वाक्यांश के साथ निजी कुंजी (हमारी सुरक्षा टीम के अनुसार अनिवार्य), और यह हडसन या अन्य उपकरणों के साथ एकीकृत करने के लिए तुच्छ नहीं है।

संक्षेप में, मैं अब भी बेहतर Git मिल जाए, लेकिन जब से मैं इसकी स्थापना/प्रशासन को लागू करने के आरोप में हूँ, मैं पूरी तरह से मेरे पिछले विश्लेषण तो सवाल "Can we finally move to DVCS in Corporate Software? Is SVN still a 'must have' for development?" में किए गए से सहमत;)।

+0

होने प्रमाणीकरण HTTP संभव में किया है अब "स्मार्ट" HTTP प्रोटोकॉल है कि वहाँ? इसका मतलब यह हो सकता है कि आप गिट के लिए HTTP पर सबवर्सन के साथ जो भी प्रमाणीकरण परत का उपयोग कर रहे हैं उसका पुन: उपयोग कर सकते हैं। – araqnid

+0

@araqnid: निश्चित रूप से। अभी, मैं gitolite साथ ssh दृष्टिकोण के साथ जाना है, लेकिन मैं यह भी भी स्मार्ट http प्रोटोकॉल का परीक्षण, प्रस्तुति और http://progit.org/2010/03/04/smart-http.html – VonC

1

मूल्य है।

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

  2. डेवलपर कार्य-आधारित शाखाओं में वितरित प्रणाली में रहता है और केंद्रीकृत इतिहास क्लीनर रहता है।

  3. केन्द्रीकृत प्रणाली वितरण प्रणाली से लोड बड़ी द्विआधारी संपत्ति के लिए इस्तेमाल किया जा सकता है।

लागत है।

  1. एक संकर पर्यावरण के लिए समर्थन/प्रशिक्षण।

  2. आवश्यक ढूंढने/प्रणालियों के बीच एक अनुवाद परत को बनाए रखने।

+0

आप की टिप्पणी निम्नलिखित होगा इतिहास खोना, जो बुरा लगता है। –

+0

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