git जीआईटी के बारे में इतना क्या बात है?




version-control dvcs (8)

किसी और से अधिक पारंपरिक वीसीएस पृष्ठभूमि (सीवीएस / एसवीएन) से आने के लिए, जीआईटी को जानने और माइग्रेट करने के लिए सबसे महत्वपूर्ण कारण क्या हैं?

कृपया git का काम करने के लिए किसी टीम की आवश्यक तकनीकी क्षमता पर टिप्पणी करें मैंने देखा है कि स्मार्ट लोग सीखने की अवस्था पर चढ़ते हैं और अभी भी कुछ बाल खो देते हैं। क्या कोई इस वक्र पर चढ़ सकता है, या सभी टीमों के लिए नहीं है?

बेशक मैं भी कार्यात्मक लाभ, उपकरण समर्थन, एकीकरण अन्य सिस्टम (सीआई, आदि) के बारे में सुनना चाहता हूं ...

(यह एक स्पष्ट प्रश्न जैसा लगता है, लेकिन कुछ खोजों के बावजूद मुझे इसके बारे में कोई डुप्लिकेट नहीं मिला)

संपादित करें अच्छे संसाधनों के लिए लिंक भी सराहना करते हैं।

https://code.i-harness.com


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

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

आप बुनियादी मुट्ठी भर कमांड के साथ एक बहुत संतोषजनक git अनुभव कर सकते हैं

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


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

मैं git विकी को देखने का सुझाव देता हूं: http://git.or.cz/gitwiki और आधिकारिक वेबसाइट: http://git-scm.com/

मुझे उम्मीद है कि यह मदद करता है और आप जीआईटी का आनंद लेते हैं।


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

वितरित VCS को आगे बढ़ने से विकास शैली में कुछ बदलाव आएंगे, जो कुछ डेवलपर्स को पसंद आएंगे, लेकिन अन्य अच्छी तरह से नफरत कर सकते हैं। कोई भी सवाल नहीं है कि git एक जटिल जानवर है जहां एक ही परिणाम के कई रास्ते हैं। जीआईटी के लिए एक समूह के प्रवास में अग्रणी होने के लिए आपको उन रास्तों को सीखने में कुछ समय का निवेश करना होगा और फिर सामान्य परिदृश्यों के लिए वर्कफ़्लो और कमांड की चीट शीट तैयार करना होगा।

मैं पहले एक ग्राहक के रूप में इसके साथ सहज महसूस कर रहा हूं, गीथब से बात कर रहा हूं या ऐसा ही उपकरण।

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

जांच करने वाला एक उपकरण समीक्षा बोर्ड है , यह एक शानदार टीम कोड समीक्षा टूल है और इसमें एक git प्लगइन है


बहुत से लोग इस बात के बारे में बात करते हैं कि जटिल गिट का उपयोग कैसे करना है, लेकिन यह कुछ भी नहीं है कि अगर आप बहुत सरल उपयोग के पैटर्न गिट पर चिपकते हैं तो आरसीएस के मुकाबले कोई और जटिल नहीं है।

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

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

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

अक्सर मैं बड़ी रिफैक्टरिंग नौकरियों पर काम कर रहा था और एक साथ एक ही समय में छोटे सुधार कर रहा था। मुझे लगता है कि प्रबल के साथ हथकंडा करने के लिए बहुत मुश्किल है। लेकिन जीआईटी के साथ मैं अलग-अलग प्रयोगों, रिफैक्टरिंग और बग फिक्सिंग के लिए छोटे स्थानीय शाखाओं का भार बढ़ा पाया था।

तो मेरे लिए जीआईटी के बड़े विक्रय बिंदु हैं:

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

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


Github! वास्तव में, मैं केवल github का उपयोग करके git की सराहना करने के लिए सीखा


मुझे पता है यह गिट के बारे में एक प्रश्न है, लेकिन ओपी को यह समझना चाहिए कि कई लाभ सभी प्रमुख वितरित संस्करण नियंत्रण प्रणालियों पर लागू होते हैं। Git, Mercurial और Bazaar सभी की अपनी ताकत और नुकसान है, ताकि आप तीनों का अध्ययन करें और निर्णय लें कि आप किस तरह से काम करते हैं और आपकी परियोजनाओं के लिए सबसे उपयुक्त है।


जीआईटी की कहानी एफओएसएस इतिहास में एक क्लासिक है विकिपीडिया में गीत का इतिहास देखें उस कहानी के लिए टैग: बिटकिपर, एंड्रयू ट्रिडगेल, टॉर्वाल्ड, गीट, स्वयं दो दिनों में होस्ट किया गया

ठीक है, कोई जवाब नहीं, किसी को FOSS / Hacker रवैया वाला कोई व्यक्ति इसे पढ़ने के लिए निश्चित रूप से प्यार करता है।


मेरे सिर के शीर्ष पर:

  • इसका वितरित पहलू (प्रत्येक डेवलपर के पास रिपॉजिटरी की एक प्रति है)
  • जटिल विलय को बहुत जल्दी से निपटने की क्षमता
  • कार्य करने के लिए काम से स्विच करने की संभावना, अपने काम को रोकना, उसे वापस जाना ...
  • सस्ते शाखाएं (तत्काल स्विच: यह सिर्फ एक फ़ाइल में कुछ बिट्स लिखता है! और यह एक शाखा को एसवीएन जैसी निर्देशिका के रूप में नहीं मानता है)

अलग-अलग रिपो के बीच वर्कफ़्लो को स्थापित करने की मुख्य समस्या है, जो पहले से ही प्रकाशित हो चुकी है (इतिहास में किसी सार्वजनिक रिपो को धकेल दिया गया) के इतिहास को तोड़ने के बिना।

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





dvcs