مولّد ملف تجاهل Git

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

مجانية تعمل داخل متصفحك آخر مراجعة: الثلاثاء، 30 جمادى الأولى 1448 بعد الهجرة

تعمل هذه الأداة داخل متصفحك. ما تكتبه فيها لا يُرسل إلينا.

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

  1. ضع علامة على اللغات والأطر والمحررات وأنظمة التشغيل التي يستخدمها مشروعك. واستخدم مسح الكل للبدء من جديد.
  2. اقرأ ملف .gitignore الخاص بك. لكل قالب عنوانه، والسطر الذي تسرده قوالب سابقة يظهر مرة واحدة فقط.
  3. اضغط نسخ أو تنزيل، واحفظ النص في ملف باسم .gitignore في المجلد الأعلى من مشروعك.

كيف تُدمج القوالب

يصبح كل قالب تختاره قسماً واحداً يبدأ بسطر عنوان مثل # ==== Node ====. تتبع الأقسام ترتيب القوائم في الصفحة، لذلك يعطي الاختيار نفسه الملف نفسه دائماً.

  • النمط الموجود في الملف يُترك عند تكراره.
  • التعليق الموجود في الملف يُترك بالطريقة نفسها.
  • تبقى الأسطر الفارغة بين الأسطر، وتُحذف في بداية كل قسم ونهايته.
  • القالب الذي تسرد أسطره كلها قوالب سابقة لا يضيف شيئاً، فلا يحصل على سطر عنوان.

الأسطر المكررة وعلامة !

يقرأ Git أنماط ملف .gitignore بالترتيب، والنمط اللاحق يغلب السابق. والنمط الذي يبدأ بـ ! يعيد تضمين ملف استبعده نمط سابق (gitignore(5)). لذلك لا يُحذف النمط المكرر إلا إذا كانت الأسطر بين نسختيه من نوعه: إن كان النمط يستبعد، فلا يجوز أن يبدأ أي سطر بينهما بـ !، وإن كان يبدأ بـ !، فلا يجوز أن يستبعد أي سطر بينهما. وإلا بقي التكرار، لأنه يغيّر النتيجة.

مصادر القوالب

القوالب الواحد والخمسون نسخ من ملفات github/gitignore، وهي مجموعة القوالب التي يقدمها GitHub للمستودعات الجديدة. ترخّص المجموعة بموجب CC0 1.0 Universal، فتضع القوالب في الملكية العامة. تبقى أسطر كل قالب كما هي باستثناء الدمج، وعناوين الأقسام تستخدم أسماء المشاريع دون ترجمة.

ما الذي لا يغطيه الملف

  • لا يعرف الملف الملفات التي تنشئها أدواتك. أضف أسطرها بنفسك، مثل مجلد للرفع أو ملف إعدادات محلي.
  • يؤثر النمط في الملفات التي لا يتتبعها git بعد. والملف الذي يتتبعه git أصلاً يبقى متتبعاً حتى تشغّل git rm --cached عليه.
  • غالباً ما تنتمي ملفات المحرر والنظام إلى ملف تجاهل عام (core.excludesFile)، فتتجاهلها كل مشاريع حاسوبك دون سطر في ملف المشروع.

مثال محلول: C وC++

عند اختيار C ثم C++ ينتج ملف من 77 سطر نمط وتعليق. يضيف قسم C 46 سطراً. ويضيف قسم C++ 31 سطراً ويحذف 23 سطراً سبق أن سردها قسم C، مثل *.o وdo*.obj وdo*.so. ولا يأتي بين هاتين النسختين أي سطر يبدأ بـ !، لذلك حُذفت التكرارات.

القالب الأسطر المضافة الأسطر المحذوفة
C 46 0
C++ 31 23

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

هل يُرسل ملف .gitignore إلى خادم؟

لا. القوالب مضمّنة في الصفحة، ويجري الدمج في متصفحك، فيبقى الملف الذي تبنيه على جهازك حتى تحفظه.

لماذا يُكتب السطر مرة واحدة عندما يملكه قالبان؟

يُبقي الدمج النسخة الأولى ويحذف النسخ اللاحقة، لأن النمط المكرر لا يغيّر شيئاً. والاستثناء هو التكرار الذي يأتي بعد سطر يبدأ بـ !، لأنه قد يغيّر النتيجة، فتبقى تلك النسخة.

هل يوقف ملف .gitignore تتبع git لملف يتتبعه أصلاً؟

لا. يؤثر النمط في الملفات التي لا يتتبعها git بعد فقط. ولإيقاف تتبع ملف موجود في المستودع، شغّل git rm --cached عليه، فينطبق النمط عليه بعد ذلك.

هل تُوضع ملفات المحرر والنظام في .gitignore الخاص بالمشروع؟

يمكن ذلك، لكن ملف التجاهل العام الذي تضبطه بـ core.excludesFile أفضل غالباً. فهو ينطبق على كل مشاريع حاسوبك، فيحتفظ ملف المشروع بالأسطر التي تخص المشروع نفسه فقط.

هل القوالب محدَّثة؟

هي نسخ من ملفات github/gitignore كما كانت عند آخر تحديث لهذه الأداة. ويتغير المستودع مع الوقت، لذلك قد توجد على GitHub نسخة أحدث من القالب.

المصادر

آخر مراجعة للأرقام والنص: الثلاثاء، 30 جمادى الأولى 1448 بعد الهجرة.

نستخدم ملفات تعريف ارتباط ضرورية لتشغيل الموقع. وبموافقتك، تستخدم Google أيضاً ملفات تعريف ارتباط للإعلانات، لعرض إعلانات مخصصة. وإذا رفضتها، فستظل ترى إعلانات، لكنها لن تكون مخصصة لك.