git prune
الإدارة
حذف الكائنات غير القابلة للوصول
يحذف الأمر 'git prune' الكائنات المتفرّقة التي لا يصل إليها أي فرع أو وسم أو فهرس أو مُدخل reflog — مثل commits متروكة منذ زمن. وهو جزء من git gc الذي يُفضَّل استخدامه عادةً. لا يمكن استرجاع الكائنات المحذوفة.
الصيغة
git prune [-n] [-v] [--expire <time>][ ] اختياري| أو<arg> قيمة تُستبدل... قابل للتكرار--flag خيار
أمثلة
معاينة
git prune -n -vما الذي سيُحذف.
عبر gc
git gc --prune=nowالطريقة المعتادة.
أمثلة على سير العمل
1
git reflog expire --expire=now --allنسيان الـ reflog
2
git pruneحذف الكائنات التي صارت غير قابلة للوصول
حل المشكلات
لم يُحذف شيء
السبب: ما زال الـ reflog يشير إلى الكائنات
أنهِ صلاحية الـ reflog أولًا (أو انتظر 90/30 يومًا)
نصائح وأخطاء شائعة
أفضل الممارسات
- ✓استخدم git gc بدل استدعاء prune مباشرة.
أخطاء متكررة
- ✗الخلط بين git prune وgit remote prune (الذي يزيل الفروع البعيدة المتقادمة).
الأسئلة الشائعة
A:
لا. شغّل git fsck --lost-found أولًا إن كنت مترددًا.