about

عن مولّد ملفات .gitignore

تأخذ هذه الأداة مجموعة القوالب الرسمية التي تديرها GitHub، أي github/gitignore، كما هي، فتدمج عدة قوالب في ملف واحد وتنظّم القواعد المتداخلة. ويمكنك التحقق فورًا من الملفات التي تتجاهلها قواعدك فعليًا في أداة اختبار الأنماط المبنية على قواعد المطابقة نفسها التي يستخدمها git. تتم كل المعالجة داخل المتصفح، ولا تُرسل القواعد والمسارات التي تدخلها إلى أي خادم.

الميزات الرئيسية

طريقة الاستخدام

  1. ابحث عن القوالب في القائمة وحدِّدها، أو انقر على زر التركيبات الشائعة. عادةً تختار لغة أو إطارًا أو اثنين، إضافة إلى نظام التشغيل والمحرر اللذين تستخدمهما.
  2. راجع النتيجة في الجهة المقابلة. تنعكس التغييرات فورًا عند تبديل خيارات إزالة القواعد المكررة وتعليقات الأقسام والإبقاء على التعليقات الأصلية. اكتب القواعد الخاصة بمشروعك في قواعد تضيفها بنفسك.
  3. استخدم نسخ أو تنزيل لإنشاء .gitignore في جذر المستودع. إذا حفظ متصفحك الملف باسم gitignore، فأعد تسميته بإضافة النقطة في أوله.
  4. انقر على زر اختبار لنقل القواعد إلى تبويب اختبار الأنماط. الصق مسارات مستودعك وتحقق من أنها تُتجاهل كما تريد (مخرجات git ls-files أو find . -type f مناسبة لذلك).
  5. إذا لم تُتجاهل ملفات مُودَعة مسبقًا، فأنشئ الأوامر في تبويب إلغاء التتبع ثم نفّذها وأودِع التغييرات.

بيانات القوالب والترخيص

القوالب البالغ عددها 312 مأخوذة من الإيداع 356fd7b (2026-09-11) في مستودع github/gitignore. يُوزَّع هذا المستودع بترخيص CC0-1.0 (إهداء إلى الملك العام)، لذا يمكن نسخه وتعديله وإعادة توزيعه بحرية. يضم المجلد الجذر قوالب اللغات والأطر، ويضم Global قوالب أنظمة التشغيل والمحررات والأدوات، ويضم community القوالب المتخصصة. أما شروح القوالب ونصوص هذا الموقع فقد كتبها هذا الموقع.

الأسئلة الشائعة

أضفت الملف إلى .gitignore لكنه ما زال يظهر في git status.

لا يُطبَّق .gitignore إلا على الملفات غير المُتتبَّعة بعد. أما الملف المُودَع مسبقًا فيجب إخراجه من الفهرس بالأمر git rm --cached <file> ثم الإيداع حتى يُتجاهل. يمكنك إنشاء الأمر في تبويب إلغاء التتبع.

أعدت تضمين ملف باستخدام `!` لكنه ما زال مُتجاهَلًا.

إذا استُبعد المجلد الأعلى نفسه، فإن git لا يفحص محتواه، ولذلك لا يمكن استعادة الملفات التي بداخله باستخدام !. استبعد محتوى المجلد فقط، مثل logs/* بدلًا من logs/، ثم استخدم !logs/keep.txt. تعرض أداة اختبار الأنماط هذه الحالة على أنها «مُتجاهَل (مجلد أعلى)».

ألا تغيّر إزالة التكرار معنى القواعد؟

يتبع git آخر قاعدة مطابقة. إذا تكررت القاعدة نفسها دون وجود قاعدة ! بينهما، فإن حذف النسخة اللاحقة يعطي النتيجة نفسها. وإذا وُجدت قاعدة نفي بينهما، فلا تحذف هذه الأداة التكرار بل تُبقيه.

هل نتائج أداة اختبار الأنماط مطابقة لـ git الفعلي؟

بُنيت وفق وثيقة gitignore(5) وسلوك wildmatch في git، وقورنت آلاف الأنماط والمسارات العشوائية بنتائج git ls-files --ignored الفعلية وتأكد تطابقها. لكنها لا تحسب معًا ملفات .gitignore في المجلدات الفرعية ولا .git/info/exclude ولا الإعداد العام، لذا تحقق من الحكم على مستوى المستودع كله باستخدام git check-ignore -v.

هل يجب وضع قواعد macOS وVS Code في ملف .gitignore الخاص بالمشروع؟

الملفات التي ينشئها نظام التشغيل والمحرر تخص بيئتك الشخصية، لذا يُوصى بوضعها في ملف gitignore عام تحدده عبر core.excludesFile. ومع ذلك، تضعها فرق كثيرة في ملف المشروع أيضًا لأن كثيرًا من أعضاء الفريق لا يضبطون الإعداد العام.

ما مدى حداثة بيانات القوالب؟

يُنزَّل مستودع github/gitignore بواسطة سكربت البناء ويُضمَّن في الموقع. يظهر الإيداع المرجعي وتاريخه في صفحة «عن الخدمة» وأسفل قائمة القوالب وفي التعليق الافتتاحي للنتيجة المُنشأة.

هل يُحفظ ما أدخله أو يُرسل؟

لا. يجري الإنشاء والاختبار وإنشاء الأوامر كلها داخل المتصفح. لا يُحفظ في localStorage الخاص بهذا المتصفح سوى السمة (فاتحة/داكنة) وخيارات الإنشاء.