ما الذي يستحق التجاهل في المشروع؟
ابدأ بما يمكن إعادة إنشائه، مثل التبعيات المثبّتة ونتائج البناء وذاكرة التخزين المؤقت. لمشروع Next.js، اجمع قالبه مع Node.js. وفي Java اختر Maven أو Gradle وفق أداة البناء المستخدمة.
القوالب الثمانية عشر المضمّنة نقطة بداية مختصرة وليست نسخة كاملة من مجموعة GitHub. لا تفحص المستودع ولا تتعرّف على أدواته تلقائيًا. احفظ الملف باسم .gitignore مع النقطة في بدايته، وادمج القواعد إذا كان لديك ملف سابق.
إعدادات الفريق ليست ملفات مؤقتة
قد تتضمّن إعدادات VS Code وJetBrains خيارات يحتاج إليها جميع المطوّرين. لذلك تستبعد القوالب بيانات شخصية محدّدة بدل تجاهل مجلد الإعدادات كاملًا. ويمكن وضع الاستثناءات الخاصة بجهازك في .git/info/exclude.
تبقى ملفات قفل الإصدارات الشائعة متاحة للإضافة إلى المستودع. يعتمد قرار تتبّع package-lock.json أو Cargo.lock وغيره على نظام الحزم وطبيعة المشروع، سواء كان تطبيقًا أو مكتبة.
أمثلة لثلاث بيئات تطوير
مشروع Next.js
تبعيات Node.js وناتج Next.js وبيانات macOS، مع إبقاء ملفات قفل الإصدارات.
العودة إلى المولّد ↑# أُنشئ باستخدام مولّد Gitignore من LightNode
# راجع هذه القواعد الأساسية قبل إضافتها إلى المشروع.
# Node.js
node_modules/
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-store/
coverage/
.nyc_output/
# Next.js
.next/
out/
.vercel/
*.tsbuildinfo
# macOS
.DS_Store
._*
.Spotlight-V100/
.Trashes/
بيئة Python
بيئات Python وذاكرتها المؤقتة وسجل VS Code ونسخ Linux الاحتياطية.
العودة إلى المولّد ↑# أُنشئ باستخدام مولّد Gitignore من LightNode
# راجع هذه القواعد الأساسية قبل إضافتها إلى المشروع.
# Python
__pycache__/
*.py[cod]
.venv/
venv/
.pytest_cache/
.mypy_cache/
.ruff_cache/
.coverage
htmlcov/
*.egg-info/
# VS Code
.history/
*.vsix
# Linux
.Trash-*/
*~
Java مع IntelliJ
ناتج Maven وGradle وحالة JetBrains الشخصية وبيانات Windows. ألغِ تحديد أداة البناء غير المستخدمة.
العودة إلى المولّد ↑# أُنشئ باستخدام مولّد Gitignore من LightNode
# راجع هذه القواعد الأساسية قبل إضافتها إلى المشروع.
# Java / Maven
*.class
target/
# Gradle
.gradle/
build/
# JetBrains
.idea/workspace.xml
.idea/tasks.xml
.idea/shelf/
.idea/httpRequests/
# Windows
Thumbs.db
ehthumbs.db
Desktop.ini
$RECYCLE.BIN/
أسئلة عن تجاهل الملفات
لماذا ما زال Git يتتبّع ملفًا أضفته إلى .gitignore؟
قواعد التجاهل لا توقف تتبّع الملفات الموجودة في الفهرس. افحص القاعدة بالأمر git check-ignore -v --no-index path/to/file. إذا قررت إيقاف التتبّع، يجهّز git rm --cached -- path/to/file حذف الملف من المستودع مع إبقاء النسخة المحلية. راجع التغيير قبل تثبيته في commit.
كيف أُبقي ملفًا واحدًا داخل مجلد السجلات؟
اكتب /logs/* ثم !/logs/keep.log. لا تستبعد المجلد الأب نفسه بقاعدة /logs/، إذ لا يمكن إعادة تضمين ملف داخل مجلد مستبعد.
هل يعيد المولّد ترتيب القواعد؟
لا. عند تساوي الأولوية تسري آخر قاعدة مطابقة. تُرتّب القوالب ترتيبًا ثابتًا وتأتي قواعدك في النهاية، مع إبقاء التكرار. تغيير التشكيلة يحفظ النص الإضافي في الحقل، أما مسح الكل فيزيل النص والاختيارات معًا.
هل يمكن الاحتفاظ بملفات أمثلة البيئة؟
قالب البيئة يتجاهل .env و.env.* ويستثني .env.example و.env.sample. ضع قيمًا تجريبية فقط في الأمثلة. لا تزيل قواعد التجاهل أسرارًا سبق تسجيلها في تاريخ المستودع.
هل تُرسل القواعد إلى خادم؟
يُنشأ الملف داخل المتصفح بالقوالب المضمّنة. لا يُرفع المستودع ولا تُستدعى واجهة توليد، ولا تُحفظ القواعد الإضافية حفظًا دائمًا أو تُكتب في عنوان الصفحة.
