HeadlinesBriefing favicon HeadlinesBriefing.com

ثلاثة ملفات Git للتجاهل لم تكن تعرف عنها

Hacker News •
×

كنت أحمل ملفات غير متعقبة في المستودعات لسنوات — ملاحظات ماركداون، خطط الوكيل — لأن إضافتها إلى .gitignore كانت تبدو غير نظيفة. ثم اقترح كلود استخدام .git/info/exclude، مُظهرًا أن git في الواقع يقرأ أنماط التجاهل من ثلاثة مواقع ذات تركيب متطابق.

أولاً، .gitignore في أي دليل يؤثر على كل من يستنسخ المستودع ويتم تسجيله — مثالي لمخرجات البناء مثل target/ أو __pycache__/. ثانيًا، .git/info/exclude يؤثر فقط على استنساخك، لا يتم تسجيله أبدًا، ويقع داخل .git لذا فهو مقاوم للحوادث. مثالي للملفات الشخصية المؤقتة. ثالثًا، ملف الاستثناء العالمي (الافتراضي ~/.config/git/ignore) ينطبق على كل مستودع على جهازك — ممتاز لفوضى المحرر مثل .idea/، .vscode/، .DS_Store.

الاستخدام بسيط: أضف الأنماط مباشرة. لكل مستودع: `echo 'plans/' >> .git/info/exclude`. لأشجار العمل المرتبطة، استخدم `$(git rev-parse --git-common-dir)/info/exclude`. عالميًا: أنشئ ~/.config/git/ignore وأضف الأنماط، أو قم بتكوين مسار مخصص باستخدام `git config --global core.excludesFile ~/.gitignore_global`. تدخل التغييرات حيز التنفيذ فورًا في `git status` للملفات غير المتعقبة.

ملاحظة: يستثني Claude Code افتراضيًا الملفات المتجاهلة من @-autocomplete، لذا تختفي الخطط من أداة الاختيار بمجرد إضافتها إلى .git/info/exclude.

الكيانات الرئيسية: الشركات: Claude, Claude Code | المواقع: ~/.config/git/ignore, $XDG_CONFIG_HOME/git/ignore

الأسئلة الشائعة: ما الفرق بين .gitignore و .git/info/exclude؟

.gitignore يتم تسجيله ومشاركته مع كل من يستنسخ المستودع، بينما .git/info/exclude محلي لاستنساخك فقط ولا يمكن تسجيله عن طريق الخطأ أبدًا.