.git डायरेक्टरी के अंदर क्या होता है?
(blog.meain.io)git initके समय बनने वाली.gitडायरेक्टरी का विस्तृत विवरण.gitडायरेक्टरी मेंconfig,HEAD,hooks,objects,refsजैसी कई फ़ाइलें और फ़ोल्डर शामिल होते हैंconfigटेक्स्ट फ़ाइल में मौजूदा repository की git settings, author, और file mode जैसी बुनियादी settings शामिल होती हैंHEADफ़ाइल में repository का वर्तमान head होता है, जो default branch की ओर इशारा करता है। default branch क्या चुनी गई है, उसके अनुसारmasterयाmainआदि हो सकता हैhooksडायरेक्टरी में git operations के पहले और बाद में चलाए जा सकने वाले सभी scripts शामिल होते हैंobjectsडायरेक्टरी में repository की files और commits से संबंधित data शामिल होता हैrefsडायरेक्टरी में branches और tags को इंगित करने वाले references या pointers संग्रहीत होते हैं
- जब किसी फ़ाइल को repository में जोड़ा जाता है, तो
indexफ़ाइल संशोधित होती है औरobjectsडायरेक्टरी में नए फ़ोल्डर और फ़ाइलें जुड़ती हैं objectsडायरेक्टरी की नई फ़ाइल में जोड़ी गई फ़ाइल का type, size, और data शामिल होता है, और उसका फ़ाइल नाम सामग्री केsha1से लिया जाता है- जब फ़ाइल commit की जाती है, तो commit message को शामिल करने वाली
COMMIT_EDITMSGनाम की नई फ़ाइल बनती है औरobjectsडायरेक्टरी में नया object जुड़ने सहित कई बदलाव होते हैं - git में branch बनाना एक सरल प्रक्रिया है, जिसमें
refs/headsडायरेक्टरी में branch नाम और नवीनतम commit की ID वाली नई फ़ाइल जोड़ना शामिल है - branch checkout में
.git/HEADफ़ाइल को अपडेट किया जाता है ताकि वह checkout की गई branch की ओर इशारा करे - branch merge तीन तरीकों से किया जा सकता है: fast forward merge, rebase merge, और अलग merge commit बनाना
- जब repository को push किया जाता है, तो
objectsडायरेक्टरी की सारी सामग्री और स्पष्ट रूप से push किए गएrefsके अंतर्गत आने वाली सभी branches और tags दूसरी git repository में भेज दिए जाते हैं
1 टिप्पणियां