2010-09-09 15 views

उत्तर

8

git commit -a जो है तरह git add -u नहीं है -, यह सब संशोधित फ़ाइलों कहते हैं, लेकिन यह git add ., जो दोनों पर नज़र रखी और ट्रैक न किए गए फ़ाइलें (विलोपन सहित नहीं) कहते हैं करने के लिए ट्रैक न किए गए फ़ाइलों को जोड़ नहीं है, इसके विपरीत में प्रदान की जाती है कि वे शामिल संशोधनों।

Difference between "git add -A" and "git add ."

देखें लेकिन हाँ, सबसे workflows में, आप या तो git add आप git commit से पहले, या आप ज्यादातर git commit -a का उपयोग करेगा।

1

किसी भी समय फ़ाइल जोड़ने या किसी विरोध को हल करने के लिए इसका उपयोग करें। यदि आप केवल एक फ़ाइल बदलते हैं, फ़ाइल हटाते हैं, या उस प्रकृति की चीजें हटाते हैं तो आपको इसका उपयोग करने की आवश्यकता नहीं है।

0

जब आपके पास नई फ़ाइलें हैं जो स्रोत नियंत्रण में नहीं हैं तो केवल गिट ऐड का उपयोग करें। अन्यथा, गिट प्रतिबद्ध का उपयोग करते समय -ए स्विच का अच्छा उपयोग करें।

+1

मैं डाउनवोट नहीं करूँगा, लेकिन मुझे लगता है कि यह भयानक सलाह है। गिट की महान विशेषताओं में से एक सूचकांक/स्टेजिंग क्षेत्र है। मैं इसके बजाय इसका अच्छा उपयोग करने का सुझाव दूंगा। – camh

+0

@camh: जब तक आपको स्टेजिंग क्षेत्र की आवश्यकता नहीं है या नहीं चाहिए। जब मुझे इसकी ज़रूरत होती है तो यह अनिवार्य है, लेकिन उस समय का विशाल बहुमत मैं बस प्रतिबद्ध करना चाहता हूं। @ क्रिस की सलाह बस ठीक है। – kubi

1

मैं git add का उपयोग करता हूं जब मुझे लगता है कि एक फ़ाइल प्रतिबद्ध होने के लिए तैयार है, भले ही मुझे पता है कि मैं कुछ समय बाद प्रतिबद्ध नहीं करूँगा। अन्य सभी के अलावा, git diff इंडेक्स (स्टेजिंग क्षेत्र) में क्या है और कार्यशील निर्देशिका में क्या है, के बीच अंतरों पर रिपोर्ट करता है। एक बार जब आप एक फ़ाइल जोड़ लेते हैं, तब तक आप इसमें अंतर नहीं देखते हैं जब तक आप इसे दोबारा संशोधित नहीं करते। इसलिए, अगर मेरे पास कई फाइलें हैं, तो मैं उन्हें इंडेक्स टुकड़े टुकड़े में जोड़ता हूं, आखिर में जब सभी बदली गई फाइलें तैयार होती हैं तो यह होती है। नतीजतन, मैं शायद ही कभी git commit -a का उपयोग करता हूं। हालांकि, प्रत्येक अपने आप के लिए। दोनों विधियां काम करती हैं, और git इतनी दयालु है कि किसी को भी जिस तरह से चाहें (सीमाओं के भीतर) काम करने के लिए मजबूर न करें - बल्कि, यह आपको जिस तरह से काम करना चाहता है, उसे काम करने देता है।

4

git add आपको अपनी प्रतिबद्धता को टुकड़ों में ले जाने देता है। यदि आप उचित आकार के टुकड़ों में काम कर रहे हैं तो यह हमेशा जरूरी नहीं है लेकिन कुछ बार यह अनिवार्य है।

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

मुझे बहुत उपयोगी लगता है git add -i, जो इंटरैक्टिव मोड में जाता है। आप का भी उपयोग कर सकते हैं। यहां आप चुन सकते हैं कि कौन सी फाइलें जोड़ने के लिए (और फ़ाइल में आपके परिवर्तनों के कौन से टुकड़े जोड़ने के लिए) एक-एक करके, प्रत्येक के लिए अंतर की जांच कर सकते हैं।

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

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

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