Gitignore परीक्षक
अपने .gitignore नियम और फ़ाइल पथों की सूची पेस्ट करें और देखें कि कौन सी फ़ाइलें अनदेखी की गई हैं, किस सटीक नियम और पंक्ति से, और कौन से निगेशन नियम चुपचाप बेकार हैं क्योंकि उनकी मूल निर्देशिका पहले से अनदेखी है।
🔒 पूरी तरह से आपके ब्राउज़र में संसाधित - आपके द्वारा यहां दर्ज की गई कोई भी चीज़ कभी भी अपलोड नहीं की जाती है।
परिणाम
"मेरा .gitignore निगेशन काम क्यों नहीं करता?" — यह git के सबसे सामान्य प्रश्नों में से एक है, और ईमानदार जवाब लगभग हमेशा एक ही है: किसी ऐसी निर्देशिका के अंदर फ़ाइल को फिर से शामिल करने का प्रयास करने वाला `!पैटर्न` कभी काम नहीं कर सकता, क्योंकि git अनदेखी निर्देशिकाओं के अंदर कुछ भी पुनः जाँचने के लिए प्रवेश नहीं करता। यह उपकरण git के वास्तविक .gitignore मिलान एल्गोरिदम को लागू करता है — कोई सन्निकटन नहीं — विशेष रूप से ताकि वह ठीक उसी स्थिति को पकड़ सके और समझा सके, साथ ही हर दूसरे पैटर्न नियम को जिसे git समर्थन करता है।
अपने .gitignore नियम एक बक्से में और फ़ाइल पथों की सूची (प्रति पंक्ति एक, जैसे `dist/index.js`, `node_modules/foo/bar.js`, या `.env`) दूसरे में पेस्ट करें, और उपकरण हर पथ का मूल्यांकन ठीक वैसे ही करता है जैसे git करेगा: टिप्पणियाँ और रिक्त पंक्तियाँ छोड़ दी जाती हैं, अनुगामी स्थान हटा दिए जाते हैं सिवाय एस्केप किए जाने के, अग्रणी `!` एक नियम को नकारता है, अग्रणी `/` उसे रूट पर स्थिर करता है बजाय हर गहराई पर मिलान करने देने के, अनुगामी `/` उसे केवल निर्देशिकाओं तक सीमित करता है, और `*`, `?`, `[abc]` कैरेक्टर क्लास और `**` (निर्देशिका सीमाओं के पार मिलान) सब प्रलेखित ग्लॉब नियमों के अनुसार काम करते हैं।
महत्वपूर्ण रूप से, पथों की जाँच रूट से नीचे तक निर्देशिका-दर-निर्देशिका की जाती है, ठीक वैसे ही जैसे git का अपना इग्नोर इंजन काम करता है — न कि हर नियम के विरुद्ध पूरे पथ को अलग-थलग परीक्षण करके। यही वह चीज़ है जो निष्क्रिय-निगेशन की स्थिति का सही पता लगाना संभव बनाती है: यदि `dist/` को पंक्ति 3 पर अनदेखा किया गया है और बाद का कोई `!dist/keep.js` उसके अंदर एक फ़ाइल बचाने का प्रयास करता है, तो यह उपकरण `dist/keep.js` को फिर भी अनदेखित बताता है, पंक्ति-3 के नियम को कारण के रूप में नामित करता है, और निगेशन को अलग से छायित के रूप में चिह्नित करता है, चुपचाप यह दिखावा करने के बजाय कि वह काम कर गया।
परिणाम तालिका हर परीक्षित पथ को स्पष्ट हाँ/नहीं अनदेखा निर्णय के साथ अपनी पंक्ति देती है, निर्णायक नियम का सटीक पाठ और पंक्ति संख्या, और — जब भी प्रासंगिक हो — एक सरल-भाषा नोट जो किसी छायित निगेशन या वंशागत मूल-निर्देशिका नियम की व्याख्या करता है। यही वह विवरण है जो एक उलझाने वाली .gitignore को ऐसी चीज़ में बदल देता है जिसके बारे में आप कमिट करने से पहले वास्तव में तर्क कर सकते हैं।