git clean

اللقطات الأساسية

إزالة الملفات غير المتتبَّعة من مجلد العمل


يحذف الأمر 'git clean' الملفات غير المتتبَّعة — ملفات لم يخزّنها Git قط، مثل السجلات أو مخرجات البناء أو التجارب. ولأن Git لا يملك نسخة منها، لا يمكن استرجاع الملفات المحذوفة. لذلك يرفض git clean العمل دون -f، ويعرض git clean -n أولًا ما سيُحذف. تبقى ملفات .gitignore ما لم تُضف -x.

الصيغة

git clean [-d] [-f] [-i] [-n] [-q] [-e <pattern>] [-x | -X] [--] [<pathspec>...]
[ ] اختياري| أو<arg> قيمة تُستبدل... قابل للتكرار--flag خيار

الخيارات

انقر على أي خيار لتوسيعه

مبتدئ (3)

لا يحذف شيئًا، يعرض فقط ما سيُحذف.

موصى بهعاين دائمًا قبل الحذف النهائي

مثال

git clean -n

يحذف الملفات فعلًا. إلزامي ما لم تُضبط clean.requireForce على false.

عند الحاجةإلزامي للحذف؛ تضيع الملفات نهائيًا

مثال

git clean -f

حذف المجلدات غير المتتبَّعة أيضًا، لا الملفات فقط.

عند الحاجةلازم حين تكون البقايا مجلدات كاملة

مثال

git clean -fd

متوسط (1)

يحذف أيضًا الملفات التي يحميها .gitignore عادة.

غير موصى بهيحذف أيضًا الملفات المتجاهَلة مثل .env أو الإعدادات المحلية

مثال

git clean -f -x

اختيار الخيار المناسب

ما يزيله كل أمر

متتبَّع أو غير متتبَّع

الأمرملفات غير متتبَّعةملفات متجاهَلةتعديلات الملفات المتتبَّعة
git clean -fمحذوفمحفوظمحفوظ
git clean -f -xمحذوفمحذوفمحفوظ
git restore .محفوظمحفوظمُهمَل
git stash -uمخبّأ (stash)محفوظمخبّأ (stash)

أمثلة

معاينة

git clean -n

يسرد الملفات غير المتتبَّعة التي ستُحذف.


حذف الملفات غير المتتبَّعة

git clean -f

يحذفها نهائيًا.


المجلدات أيضًا

git clean -fd

يحذف المجلدات غير المتتبَّعة أيضًا.

أمثلة على سير العمل

1
git status -s

رؤية الملفات غير المتتبَّعة (??)

2
git clean -n

معاينة الحذف

3
git clean -f

حذفها

حل المشكلات

fatal: clean.requireForce is true and -f not given

السبب: يرفض git clean الحذف دون -f

شغّل git clean -n للمعاينة، ثم git clean -f

لم يُحذف مجلد غير متتبَّع

السبب: المجلدات تحتاج -d

استخدم git clean -fd

حذفت ملفًا كنت أحتاجه

السبب: الملفات غير المتتبَّعة ليس لها نسخة في Git

لا يستطيع Git استعادته؛ تحقّق من محرّرك أو نسخك الاحتياطية. في المرة القادمة استخدم git stash -u

نصائح وأخطاء شائعة

أفضل الممارسات

  • ✓شغّل دائمًا git clean -n قبل git clean -f.
  • ✓استخدم git stash -u بدلًا منه إن كنت قد تحتاج الملفات لاحقًا.
  • ✓احصر -x في مجلدات البناء التي يمكنك إعادة توليدها.

أخطاء متكررة

  • ✗تشغيل git clean -f دون -n أولًا وفقدان ملف ما زلت تحتاجه.
  • ✗إضافة -x بحكم العادة وحذف ملفات متجاهَلة مثل .env.
  • ✗توقّع أن يتراجع git clean عن تعديلات الملفات المتتبَّعة — استخدم git restore لذلك.

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

A:

لا. لم تُخزَّن الملفات في Git قط.

A:

لا. يحذف فقط الملفات غير المتتبَّعة (ومع -x، المتجاهَلة).

A:

نعم: يتيح لك git clean -i اختيار الملفات واحدًا واحدًا.