यह टूल क्या करता है
.gitignore जेनरेटर तैयार टेम्पलेट मिलाकर आपकी रिपॉज़िटरी के लिए .gitignore फ़ाइल बनाता है। अपने प्रोजेक्ट की भाषाएँ, फ़्रेमवर्क, बिल्ड टूल, गेम इंजन, एडिटर और ऑपरेटिंग सिस्टम चुनें, और टूल उनके नियमों को हर सेक्शन के लिए ### नाम ### शीर्षक के साथ एक फ़ाइल में जोड़ देता है, जिसे तुरंत कॉपी या डाउनलोड किया जा सकता है।
इसमें github/gitignore संग्रह के लगभग साठ टेम्पलेट शामिल हैं: Node.js, Python, Java, Go, Rust, .NET, Swift, Laravel और Symfony जैसे PHP फ़्रेमवर्क, Next.js, Flutter, Android, Terraform, Unity, Unreal Engine, Godot, VS Code, JetBrains IDE, Vim, Emacs, macOS, Windows, Linux और भी बहुत कुछ। सब कुछ आपके ब्राउज़र में चलता है; कोई अनुरोध नहीं भेजा जाता।
उपयोग कैसे करें
- सूची में टेम्पलेट पर क्लिक करके उन्हें जोड़ें। खोज बॉक्स आम उपनाम भी पहचानता है: “typescript” से Node.js और “intellij” से JetBrains मिलता है।
- चुने गए टेम्पलेट चुनने के क्रम में ऊपर लेबल के रूप में दिखते हैं, और फ़ाइल भी उसी क्रम में बनती है। हटाने के लिए लेबल पर क्लिक करें, या फिर से शुरू करने के लिए साफ़ करें दबाएँ।
- प्रोजेक्ट से जुड़ी खास एंट्री कस्टम नियम में कॉमा से अलग करके लिखें, जैसे
.env, /dist, *.local। ये अंत में### Custom ###सेक्शन में जुड़ती हैं। - चुनें कि टेम्पलेट की व्याख्या वाली टिप्पणियाँ रखनी हैं या नहीं, और पिछले टेम्पलेट में पहले से मौजूद नियम हटाने हैं या नहीं।
- परिणाम कॉपी करें या डाउनलोड करें। डाउनलोड की गई फ़ाइल का नाम
.gitignoreहै; इसे रिपॉज़िटरी की रूट में सेव करें।
चुनाव पेज के पते में सेव रहता है, इसलिए बुकमार्क या साझा लिंक वही फ़ाइल फिर से बना देता है।
उदाहरण
Node.js, macOS और VS Code चुनकर कस्टम नियम .env.local जोड़ने और टिप्पणियाँ बंद करने पर ऐसी फ़ाइल बनती है (संक्षिप्त):
### Node.js ###
logs
*.log
npm-debug.log*
…
node_modules/
…
### macOS ###
.DS_Store
.AppleDouble
.LSOverride
…
### VS Code ###
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
!.vscode/*.code-snippets
!*.code-workspace
*.vsix
### Custom ###
.env.local
! से शुरू होने वाले पैटर्न उस चीज़ को फिर से शामिल करते हैं जिसे पिछले नियम ने बाहर किया था: यहाँ साझा VS Code सेटिंग, टास्क और लॉन्च कॉन्फ़िगरेशन रिपॉज़िटरी में रहते हैं, जबकि निजी एडिटर स्थिति अनदेखी होती है। .env को कस्टम नियम के रूप में जोड़ने से कुछ नहीं बदलेगा, क्योंकि Node.js टेम्पलेट में यह पहले से है।
सुझाव
- अपने निजी टूल के नियम (एडिटर की स्वैप फ़ाइलें, सिस्टम मेटाडेटा) ग्लोबल एक्सक्लूड फ़ाइल में रखें, ताकि हर प्रोजेक्ट में दोहराए बिना सभी रिपॉज़िटरी को फ़ायदा मिले।
- अंत में स्लैश, जैसे
build/, सिर्फ़ डायरेक्टरी से मेल खाता है; शुरुआत में स्लैश, जैसे/build, नियम को रिपॉज़िटरी की रूट से बाँध देता है। - किसी पाथ से कौन-सी ignore फ़ाइल की कौन-सी लाइन मेल खाती है, यह देखने के लिए
git check-ignore -v <पाथ>इस्तेमाल करें। - पहले से कमिट हो चुके सीक्रेट बचाने के लिए .gitignore पर भरोसा न करें: उन्हें बदलें और इतिहास दोबारा लिखें।
अक्सर पूछे जाने वाले सवाल
› टेम्पलेट कहाँ से आते हैं?
ये आधिकारिक github/gitignore संग्रह की साथ में शामिल प्रतियाँ हैं, जिसे GitHub CC0 पब्लिक-डोमेन समर्पण के तहत प्रकाशित करता है। टूल इस्तेमाल करते समय कुछ भी डाउनलोड नहीं होता; टेम्पलेट पेज के साथ ही आते हैं।
› .gitignore में जोड़ने के बाद भी फ़ाइल ट्रैक क्यों हो रही है?
.gitignore सिर्फ़ उन फ़ाइलों पर असर डालता है जो ट्रैक नहीं हो रहीं। अगर फ़ाइल पहले कमिट हो चुकी है, तो git rm --cached <फ़ाइल> (फ़ोल्डर के लिए -r) से उसे इंडेक्स से हटाएँ और कमिट करें; फ़ाइल डिस्क पर बनी रहती है और उसके बाद अनदेखी होती है।
› दोहराए गए नियम हटाएँ क्या करता है?
कई टेम्पलेट में एक जैसे नियम होते हैं: Java और Kotlin दोनों *.class को, C और C++ दोनों *.o को अनदेखा करते हैं। विकल्प चालू होने पर हर नियम सिर्फ़ पहली बार आने पर लिखा जाता है, और जिस शीर्षक टिप्पणी के सारे नियम हट गए वह भी हटा दी जाती है। हर टेम्पलेट को ठीक प्रकाशित रूप में पाने के लिए इसे बंद करें।
› क्या .gitignore फ़ाइल को कमिट करना चाहिए?
हाँ। कमिट की गई .gitignore रिपॉज़िटरी क्लोन करने वाले हर व्यक्ति पर लागू होती है। जो नियम सिर्फ़ आपकी मशीन से जुड़े हैं, जैसे एडिटर या ऑपरेटिंग सिस्टम, उन्हें ग्लोबल एक्सक्लूड फ़ाइल (git config --global core.excludesFile ~/.gitignore_global) में भी रखा जा सकता है।