2012-08-27 9 views
15

पुस्तक प्रो गिट कहती है कि स्टेजिंग क्षेत्र सिर्फ एक सूची या सूचकांक था, जो कहता है कि git commit होने पर कौन सी फाइलें की जाएंगी, और अब index नाम को आमतौर पर "स्टेजिंग क्षेत्र" के नाम से जाना जाता है।क्या गिट स्टेजिंग क्षेत्र सिर्फ एक सूचकांक है?

लेकिन अगर हम फ़ाइल foo.txt पहले से ही रेपो का हिस्सा है कि संशोधित, और git add foo.txt का उपयोग यह मंच, और फिर से फ़ाइल को संशोधित, अब फ़ाइल दोनों "का मंचन किया" है और (के रूप में git status में देखा) "संशोधित" , और यदि हम प्रतिबद्ध करते हैं, तो "चरणबद्ध" संस्करण प्रतिबद्धता में जाएगा। दूसरा संपादन में नहीं जाना होगा

तो "मचान क्षेत्र" क्या पहले संपादित करता है, तो यह सिर्फ एक सूची है था का ट्रैक रख सकते -। फ़ाइलों की एक सूची?

उत्तर

10

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

3

index पूर्ण कार्य के टोकरी की तरह है। किसी भी बिंदु पर आप add एक (भाग) कि बाहर टोकरी करने के लिए फ़ाइल पूरा कर सकते हैं और यह (अपने वर्तमान प्रति के साथ पिछली प्रति बदल देगा ताकि जब आप अंत में commit का फैसला यह है कि बाहर टोकरी की सामग्री का उपयोग करेगा प्रतिबद्ध बनाने के लिए वर्तमान index)।

इसके अलावा अपने पहले add रेपो यदि विभिन्न लॉग के माध्यम से आवश्यक पाया जा सकता है के भीतर एक ब्लॉब ऑब्जेक्ट बनाने होगा। थोड़ी देर के बाद (30 दिन +) यह gc के साथ गायब हो जाएगा।

+0

मुझे ** उदाहरण टोकरी ** के साथ आपका उदाहरण पसंद आया, लेकिन आपने यह उल्लेख नहीं किया कि सभी –

+1

@EthanDavis स्टेजिंग पर स्टेजिंग से संबंधित कैसे है, अधिकांश भाग के लिए, इंडेक्स के समान है। अंतर परिप्रेक्ष्य में से एक है। स्टेजिंग क्षेत्र उपयोगकर्ता के लिए एक वैचारिक दृश्य है, जबकि इंडेक्स गिट डेवलपर व्यूपॉइंट का अधिक है (जहां वे 'स्टेजिंग क्षेत्र' में मौजूद चीजों की सूची रखते हैं)। गिट में देवताओं (और के लिए) नाम की कई चीजें हैं, जिन्हें उपयोगकर्ताओं द्वारा गलत समझा जाता है ;-) –

संबंधित मुद्दे