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