ماذا تفعل هذه الأداة
ينشئ مولّد .gitignore ملف .gitignore لمستودعك بدمج قوالب جاهزة. اختر اللغات وأطر العمل وأدوات البناء ومحركات الألعاب والمحررات وأنظمة التشغيل التي يستخدمها مشروعك، فتدمج الأداة قواعدها في ملف واحد مع عنوان ### الاسم ### لكل قسم، جاهز للنسخ أو التنزيل.
تضم الأداة نحو ستين قالبًا من مجموعة github/gitignore: Node.js وPython وJava وGo وRust و.NET وSwift، وأطر PHP مثل Laravel وSymfony، وNext.js وFlutter وAndroid وTerraform وUnity وUnreal Engine وGodot، وVS Code وبيئات JetBrains و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تربط القاعدة بجذر المستودع. - استخدم
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).