Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

أنماط Gitignore

جزء من قسم التحكم في الإصدارات في رحلة Terminal على Coddy — الدرس 20 من 58.

تتبع الأنماط الموجودة داخل .gitignore بعض القواعد البسيطة:

  • secret.txt: تجاهل اسم ملف محدد في أي مكان في المستودع
  • *.log: تجاهل كل ملف ينتهي بـ .log
  • build/: تجاهل مجلد build بالكامل وكل ما بداخله
  • logs/*.tmp: تجاهل ملفات .tmp داخل logs/ فقط
  • #: يبدأ سطر تعليق؛ يتم تجاهله بواسطة Git
  • !important.log: استثناء. حتى لو طابقت قاعدة سابقة هذا الملف، فإنه لن يتم تجاهله

الترتيب مهم عند خلط القواعد والاستثناءات. الأنماط اللاحقة تتجاوز الأنماط السابقة للملفات التي تتطابق مع كليهما.

تحذير مهم: يؤثر .gitignore فقط على الملفات التي لم يتم تتبعها بعد. إذا تم عمل commit لملف بالفعل، فإن إضافته إلى .gitignore لن يمنع Git من تتبعه. ستحتاج إلى إزالته من الفهرس (index) أولاً.

challenge icon

التحدي

سهل

يحتوي المجلد على: main.py، و secret.txt، و tmp/cache.dat، و tmp/keep.md. قم بتهيئة المستودع، وأنشئ ملف .gitignore يحتوي على هذين السطرين:

secret.txt
tmp/

ثم قم بتشغيل git status --short. يجب أن يظهر .gitignore و main.py فقط كملفات غير متتبعة (untracked).

ورقة مرجعية

قواعد أنماط .gitignore:

  • secret.txt — تجاهل اسم الملف بالضبط في أي مكان في المستودع
  • *.log — تجاهل جميع الملفات التي تنتهي بـ .log
  • build/ — تجاهل المجلد بأكمله ومحتوياته
  • logs/*.tmp — تجاهل ملفات .tmp داخل logs/ فقط
  • #comment — سطر تعليق، يتجاهله Git
  • !important.log — استثناء: لا تتجاهل هذا الملف

الأنماط اللاحقة تلغي الأنماط السابقة. يؤثر .gitignore فقط على الملفات غير المتتبعة؛ يجب إزالة الملفات التي تم إرسالها (committed) بالفعل من الفهرس أولاً.

جرّب بنفسك

الطرفية
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس التحكم في الإصدارات