
# التنظيف

يزيل التنظيف البيئات المعزولة التي لم تعد مطلوبة. اعرض معاينة أولًا:

```bash
wp rudel cleanup --dry-run
```

يسرد `--dry-run` العناصر التي ستُزال والسبب. شغّله دون الخيار لإزالتها:

```bash
wp rudel cleanup
```

لا يطلب الأمر تأكيدًا.

## السياسة

تُزال البيئة المعزولة غير المحمية عند تحقق أي مما يلي:

| السبب | القاعدة |
|--------|------|
| `expiry reached` | إن كان `expires_at` في الماضي |
| `age policy matched` | أُنشئت منذ أكثر من `max_age_days` |
| `idle policy matched` | مرّ على آخر نشاط لها أكثر من `max_idle_days` |

تأتي قيمتا `max_age_days` و`max_idle_days` من `rudel_config` (والقيمة الافتراضية لكل منهما `0`، ما يعطّل القاعدة). تجاوزهما لتشغيل واحد:

```bash
wp rudel cleanup --max-age-days=30 --dry-run
wp rudel cleanup --max-idle-days=7
```

يُحدَّث آخر نشاط مع كل طلب يحدد البيئة المعزولة، وكذلك عند إنشاء اللقطات.

## البيئات المدمجة

```bash
wp rudel cleanup --merged --dry-run
```

`--merged` ينفّذ تمريرة منفصلة بدلًا من السياسة أعلاه. يزيل بيئة معزولة عندما يكون كل فرع مرتبط بسجل Git للعمل عليها مدمجًا في الفرع الافتراضي للمستودع، ثم يحذف تلك الفروع. تنشأ أشجار العمل المرتبطة عند استنساخ بيئة معزولة يكون مجلد القالب فيها مستودع Git (راجع [Git](https://rudel.inline0.dev/ar/docs/features/git)). لا تحتوي البيئات المعزولة المُنشأة باستخدام `--git` على سجلات لأشجار العمل، لذا يتم تخطيها دائمًا ([المشكلة #8](https://github.com/inline0/rudel/issues/8)).

## البيئات المعزولة المحمية

تتخطى الجولتان البيئات المعزولة المحمية. أزل الحماية باستخدام `wp rudel update <id> --unprotected` أولًا إذا أردت تضمينها في التنظيف. يتجاهل `wp rudel destroy` الحماية.

تؤدي إزالة بيئة معزولة إلى إسقاط جداولها وإزالة الملفات المُدارة وأشجار العمل، وحذف سجل البيئة في Rudel. راجع [الأتمتة](https://rudel.inline0.dev/ar/docs/features/automation) لجدولة التنظيف.
