.gitignore क्या हैं?
.gitignore फ़ाइल Git को बताती है कि किन फ़ाइलों और निर्देशिकाओं को अनदेखा (ट्रैक) करना है।
यह आपके भंडार से लॉग फ़ाइलें, अस्थायी फ़ाइलें, बिल्ड कलाकृतियाँ, या निजी फ़ाइलें रखने के लिए उपयोगी है।
अनदेखा करने योग्य फ़ाइलों के उदाहरण: लॉग फ़ाइलें, अस्थायी फ़ाइलें, छिपी हुई फ़ाइलें, निजी फ़ाइलें, OS/संपादक फ़ाइलें, आदि।
.gitignore फ़ाइल स्वयं Git द्वारा ट्रैक की जाती है, इसलिए रिपॉजिटरी का उपयोग करने वाला प्रत्येक व्यक्ति समान फ़ाइलों को अनदेखा कर देता है।
.gitignore-कब उच्चा करना
संवेदनशील फ़ाइलें
जब आप संवेदनशील, स्थानीय या अनावश्यक फ़ाइलों को अपने भंडार से बाहर रखना चाहते हैं
प्रोजेक्ट साझा करना
Git इतिहास को गड़बड़ाने से बचने के लिए किसी प्रोजेक्ट को दूसरों के साथ साझा करते समय
उपकरण बनाएं
अतिरिक्त फ़ाइलें बनाने वाले बिल्ड टूल या संपादकों के साथ काम करते समय
एक .gitignore फ़ाइल बनाएँ
अपने स्थानीय Git रिपॉजिटरी के मूल पर नेविगेट करें।
.gitignore नामक फ़ाइल बनाएँ:
उदाहरण
touch .gitignore
निर्देशिकाओं पर ध्यान न दें
किसी निर्देशिका और उसके अंदर की हर चीज़ को अनदेखा करने के लिए, अनुगामी स्लैश का उपयोग करें:
उदाहरण
temp/
यह आपके प्रोजेक्ट में कहीं भी temp नाम की किसी भी निर्देशिका को अनदेखा कर देता है।
Wildcards & Patterns
वाइल्डकार्ड आपको एक साथ कई फ़ाइलों या निर्देशिकाओं का मिलान करने की अनुमति देते हैं:
*
किसी भी संख्या में वर्णों से मेल खाता है
?
एकल वर्ण से मेल खाता है
[abc]
सेट में किसी भी पात्र से मेल खाता है
[!abc]
सेट में मौजूद किसी भी अन्य पात्र से मेल खाता है
उदाहरण
*.tmp # सभी .tmp फ़ाइलें my?ile.txt # my1ile.txt, myAile.txt आदि से मेल खाता है लॉग[0-9].txt # log1.txt, log2.txt, ... log9.txt
इनकार (!)
किसी ऐसी चीज़ को नज़रअंदाज़ न करें जिसे अन्यथा नज़रअंदाज कर दिया जाएगा! उपयोग करें इसे अपवाद कहा जाता है:
उदाहरण
*.log
!important.log
यह important.log को छोड़कर सभी .log फ़ाइलों को अनदेखा कर देता है।
टिप्पणियाँ और रिक्त पंक्तियाँ
# से शुरू होने वाली पंक्तियाँ टिप्पणियाँ हैं और Git द्वारा इन्हें अनदेखा कर दिया जाता है। रिक्त रेखाओं को भी नजरअंदाज कर दिया जाता है। अपने नियम समझाने के लिए टिप्पणियों का उपयोग करें:
उदाहरण
# लॉग फ़ाइलों पर ध्यान न दें *.लॉग # अस्थायी निर्देशिकाओं पर ध्यान न दें तापमान/
स्थानीय एवं व्यक्तिगत बहिष्करण नियम
यदि आप फ़ाइलों को केवल अपने लिए बाहर करना चाहते हैं (और रिपॉजिटरी का उपयोग करने वाले अन्य सभी के लिए नहीं), तो उन्हें .git/info/exclude में जोड़ें। यह .gitignore की तरह काम करता है लेकिन साझा नहीं किया जाता है।
वैश्विक .gitignore (उपयोगकर्ता स्तर)
आप अपने सभी प्रोजेक्ट के लिए एक वैश्विक .gitignore फ़ाइल सेट कर सकते हैं। हर जगह OS या संपादक फ़ाइलों को अनदेखा करना सबसे अच्छा है (उदाहरण के लिए .DS_Store या Thumbs.db):
उदाहरण
git config --global core.excludesfile ~/.gitignore_global
फिर अपने पैटर्न को ~/.gitignore_global में जोड़ें।
किसी फ़ाइल को ट्रैक करना कैसे रोकें
यदि आप .gitignore में कोई फ़ाइल जोड़ते हैं लेकिन Git अभी भी उसे ट्रैक कर रहा है, तो Git को रुकने के लिए कहें:
उदाहरण
git rm --cached filename.txt
यह फ़ाइल को रिपॉजिटरी से हटा देता है लेकिन इसे आपके कंप्यूटर पर रखता है। अगली बार जब आप प्रतिबद्ध होंगे, तो Git इसे अनदेखा कर देगा।
हेल्पनोट्स और समस्या निवारण
वर्तनी संबंधी त्रुटियों की जाँच करें
टाइपो की जांच करें—.gitignore केस-संवेदी है!
ट्रैकिंग बंद करो
यदि कोई फ़ाइल पहले से ही ट्रैक की गई है तो ट्रैकिंग बंद कर देंgit rm --cachedउपयोग
टिप्पणियों का प्रयोग करें
अपनी टीम के सदस्यों को जटिल नियम समझाने के लिए टिप्पणियों (#) का उपयोग करें।
स्थिति की जाँच करें
देखें कि क्या आपकी अनदेखा की गई फ़ाइलें ट्रैक की गई हैंgit statusउपयोग
याद करना
याद रखें: .gitignore केवल उन फ़ाइलों को प्रभावित करता है जिन्हें Git द्वारा पहले से ट्रैक नहीं किया गया है।
त्वरित संदर्भ
.gitignore बनाएँ
नई .gitignore फ़ाइल
touch .gitignore
निर्देशिका पर ध्यान न दें
संपूर्ण निर्देशिका पर ध्यान न दें
temp/
Wildcards
एकाधिक फ़ाइलों का मिलान करें
*.log
ट्रैकिंग बंद करो
फ़ाइल को ट्रैक करना बंद करें
git rm --cached file