यदि आप गिटूब पर अपने भंडार में लॉग फ़ाइल को बनाए रखने की कल्पना करते हैं तो गिट कमांड add
और commit
के उपयोग को समझना आसान है।
---------------- Day 1 --------------------
Message: Completed Task A
Index of files changed: File1, File2
Message: Completed Task B
Index of files changed: File2, File3
-------------------------------------------
---------------- Day 2 --------------------
Message: Corrected typos
Index of files changed: File3, File1
-------------------------------------------
...
...
...and so on
मैं आमतौर पर एक git pull
अनुरोध के साथ मेरा दिन शुरू करने और एक git push
अनुरोध के साथ इसे समाप्त: की तरह एक ठेठ परियोजना की मेरे लिए लॉग फ़ाइल लग सकता है। तो एक दिन के रिकॉर्ड के अंदर सब कुछ उनके बीच क्या होता है उससे मेल खाता है। प्रत्येक दिन के दौरान, एक या अधिक तार्किक कार्य हैं जो मैं पूरा करता हूं जिसके लिए कुछ फ़ाइलों को बदलने की आवश्यकता होती है। उस कार्य के दौरान संपादित की गई फ़ाइलों को एक अनुक्रमणिका में सूचीबद्ध किया गया है।
इनमें से प्रत्येक उप कार्य (कार्य ए और कार्य बी) व्यक्तिगत कार्य करता है। git add
कमांड 'फ़ाइलों के सूचकांक' सूची में फ़ाइलों को जोड़ता है। इस प्रक्रिया को स्टेजिंग भी कहा जाता है। git commit
कमांड रिकॉर्ड/कस्टम संदेश के साथ परिवर्तन और संबंधित इंडेक्स सूची को अंतिम रूप देता है।
याद रखें कि आप अभी भी केवल अपने भंडार की स्थानीय प्रति बदल रहे हैं, न कि गिथब पर। इसके बाद, केवल जब आप 'गिट पुश' करते हैं तो इन सभी रिकॉर्ड किए गए परिवर्तनों के साथ-साथ प्रत्येक प्रतिबद्धता के लिए आपकी अनुक्रमणिका फ़ाइलों के साथ, मुख्य भंडार (गीथब पर) पर लॉग ऑन करें।
उदाहरण के लिए, कि काल्पनिक लॉग फ़ाइल में दूसरी प्रविष्टि प्राप्त करने के लिए, मैंने किया होता:
git pull
# Make changes to these files
git add File3 File4
# Verify changes, run tests etc..
git commit -m 'Corrected typos'
git push
संक्षेप में, git add
और git commit
आप व्यवस्थित में मुख्य भंडार में होने वाले बदलाव को तोड़ने की सुविधा देता है तार्किक उप-परिवर्तन। जैसा कि अन्य उत्तरों और टिप्पणियों ने इंगित किया है, उनके लिए कई और उपयोग हैं। हालांकि, यह सबसे सामान्य उपयोगों में से एक है और गिट के पीछे एक ड्राइविंग सिद्धांत एसवीएन जैसे अन्य लोकप्रिय लोगों के विपरीत एक बहु-चरण संशोधन नियंत्रण प्रणाली है।
स्रोत
2018-01-15 06:08:52
नहीं, एक नज़र रखी फ़ाइल एक है कि (आमतौर से एक पूर्व प्रतिबद्ध) भंडार के लिए जाना जाता है। एक चरणबद्ध फ़ाइल वह है जिसे इंडेक्स में जोड़ा गया है, जिसे बाद में प्रतिबद्ध करने के लिए उपयोग किया जाएगा। –