एंड्रॉयड

फ़ाइलों और निर्देशिकाओं को अनदेखा करना git (.ignignore) में

.gitignore: Git में उपेक्षा कर फ़ाइलें | Git ट्यूटोरियल # 7

.gitignore: Git में उपेक्षा कर फ़ाइलें | Git ट्यूटोरियल # 7

विषयसूची:

Anonim

अक्सर, जब Git का उपयोग करने वाले प्रोजेक्ट पर काम करते हैं, तो आप विशिष्ट फ़ाइलों या निर्देशिकाओं को दूरस्थ रिपॉजिटरी में धकेलने से रोकना चाहते हैं।

.gitignore फ़ाइल निर्दिष्ट करती है कि Git की अनदेखी करने वाली फ़ाइलों को क्या अनदेखा करना चाहिए।

क्या फ़ाइलों को नजरअंदाज किया जाना चाहिए?

उपेक्षित फ़ाइलें आमतौर पर प्लेटफ़ॉर्म-विशिष्ट फ़ाइलें होती हैं या स्वचालित रूप से निर्मित सिस्टम से फ़ाइलें बनाई जाती हैं। कुछ सामान्य उदाहरणों में शामिल हैं:

  • रनटाइम फाइलें जैसे लॉग, लॉक, कैशे या अस्थाई फाइलें। संवेदनशील जानकारी जैसे पासवर्ड या API कुंजी.Compiled कोड, जैसे .class या .o निर्भरता निर्देशिका, जैसे /vendor या /node_modules , जैसे /public , /out , या /dist सिस्टम फ़ाइलें जैसे.DS_Store या Thumbs.db IDE या पाठ संपादक कॉन्फ़िगरेशन फ़ाइलें।

.gitignore

एक स्थानीय .gitignore फ़ाइल को आमतौर पर रिपॉजिटरी के रूट डायरेक्टरी में रखा जाता है। हालाँकि आप अपनी रिपॉजिटरी में विभिन्न उपनिर्देशिकाओं में कई .gitignore फाइलें बना सकते हैं। .gitignore फ़ाइलों में प्रतिमान उस निर्देशिका के सापेक्ष मेल खाते हैं जहाँ फ़ाइल रहती है।

निम्न-स्तरीय निर्देशिकाओं (उप-निर्देशिका) में रहने वाली फ़ाइलों में परिभाषित पैटर्न उच्च-स्तरीय निर्देशिकाओं में उन पर पूर्वता है।

स्थानीय .gitignore फाइलें अन्य डेवलपर्स के साथ साझा की जाती हैं और उनमें ऐसे पैटर्न होने चाहिए जो रिपॉजिटरी के अन्य सभी उपयोगकर्ताओं के लिए उपयोगी हों।

व्यक्तिगत उपेक्षा नियम

ऐसे पैटर्न जो आपके स्थानीय रिपॉजिटरी के लिए विशिष्ट हैं और जिन्हें अन्य रिपॉजिटरी में वितरित नहीं किया जाना चाहिए, उन्हें .git/info/exclude फ़ाइल में सेट किया जाना चाहिए।

उदाहरण के लिए, आप इस फ़ाइल का उपयोग अपने व्यक्तिगत प्रोजेक्ट टूल्स से उत्पन्न फ़ाइलों को अनदेखा करने के लिए कर सकते हैं।

वैश्विक .gitignore

Git आपको एक वैश्विक .gitignore फ़ाइल बनाने की भी अनुमति देता है, जहाँ आप अपने स्थानीय सिस्टम पर हर Git रिपॉजिटरी के नियमों की अनदेखी कर सकते हैं।

फ़ाइल को आपकी पसंद की किसी भी चीज़ का नाम दिया जा सकता है और किसी भी स्थान पर संग्रहीत किया जा सकता है। इस फ़ाइल को रखने के लिए सबसे आम जगह होम डायरेक्टरी है। आपको फ़ाइल को मैन्युअल रूप से बनाना होगा और इसे उपयोग करने के लिए Git को कॉन्फ़िगर करना होगा।

उदाहरण के लिए, ~/.gitignore_global को वैश्विक Git अनदेखा फ़ाइल के रूप में सेट करने के लिए, आप निम्न कार्य करेंगे:

  1. फ़ाइल बनाएँ:

    touch ~/.gitignore_global

    फ़ाइल को Git कॉन्फ़िगरेशन में जोड़ें:

    git config --global core.excludesfile ~/.gitignore_global

    अपने टेक्स्ट एडिटर के साथ फाइल खोलें और उसमें अपने नियम जोड़ें।

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

पिछली कमिट की गई फ़ाइलों को अनदेखा करना

आपकी वर्किंग कॉपी की फाइलों को ट्रैक या अनट्रैक किया जा सकता है।

पहले से की गई फ़ाइल को अनदेखा करने के लिए, आपको फ़ाइल को अनुक्रमणिका से निकालने और निकालने की आवश्यकता होगी, और फिर फ़ाइल के लिए एक नियम जोड़ें।

git rm --cached filename

- --cached विकल्प बताता है कि फाइल को काम के पेड़ से नहीं हटाना है, लेकिन केवल इसे इंडेक्स से निकालना है।

किसी निर्देशिका को पुन: हटाने के लिए, -r विकल्प का उपयोग करें:

git rm --cached filename

फ़ाइलों को पुन: हटाते समय, -n विकल्प का उपयोग करें जो "ड्राई रन" करेगा और आपको दिखाएगा कि कौन-सी फाइलें हटा दी जाएंगी:

git rm -r -n directory

डिबगिंग .gitignore फ़ाइल

कभी-कभी यह निर्धारित करना चुनौतीपूर्ण हो सकता है कि किसी विशिष्ट फ़ाइल को अनदेखा क्यों किया जा रहा है, खासकर जब आप कई .gitignore फ़ाइलों या जटिल पैटर्न का उपयोग कर रहे हैं। यह वह जगह है जहाँ git check-ignore कमांड -v विकल्प के साथ, जो git को मिलान पैटर्न के बारे में विवरण प्रदर्शित करने के लिए कहता है, काम आता है।

उदाहरण के लिए, यह जांचने के लिए कि www/yarn.lock फ़ाइल को अनदेखा क्यों किया जाता है:

git check-ignore -v www/yarn.lock

आउटपुट gitignore फ़ाइल, मिलान लाइन की संख्या और वास्तविक पैटर्न का मार्ग दिखाता है।

www/.gitignore:31:/yarn.lock www/yarn.lock

आदेश भी एक से अधिक फ़ाइल नाम को तर्क के रूप में स्वीकार करता है, और फ़ाइल को आपके काम करने वाले पेड़ में मौजूद नहीं होना चाहिए।

सभी उपेक्षित फ़ाइलों को प्रदर्शित करना

- --ignored विकल्प के साथ git status कमांड सभी उपेक्षित फ़ाइलों की सूची प्रदर्शित करता है:

git status --ignored

निष्कर्ष

.gitignore फ़ाइल आपको रिपॉजिटरी में जाँच की जा रही फ़ाइलों को बाहर करने की अनुमति देती है। फ़ाइल में ग्लोबिंग पैटर्न होते हैं जो बताते हैं कि किन फ़ाइलों और निर्देशिकाओं को अनदेखा किया जाना चाहिए।

gitignore.io एक ऑनलाइन सेवा है जो आपको अपने ऑपरेटिंग सिस्टम, प्रोग्रामिंग लैंग्वेज या IDE के लिए.ignignore फाइल जेनरेट करने की अनुमति देती है।