# عزل مساحة العمل (/ar/docs/verdent-manager/advanced-features/workspace-isolation)

> كيف يفصل Verdent تغييرات الكود المتوازية باستخدام git worktrees



يفصل عزل مساحة العمل تغييرات الكود المتوازية على مستوى نظام الملفات باستخدام git worktrees. لكل مساحة عمل دليلها الخاص، وفرعها المسحوب، وملفاتها، وحالة staging الخاصة بها.

<Note>
  إنشاء مساحات العمل يدويًا غير متاح في واجهة Verdent Desktop الحالية. زر **مساحة عمل جديدة** واختصاره في لوحة المفاتيح وخيار **تكرار إلى مساحة عمل جديدة** مخفية. يؤدي تكرار رد إلى إنشاء المهمة الجديدة في مساحة العمل الحالية.
</Note>

***

## ما ستتعلمه [#ما-ستتعلمه]

* كيف يمنع عزل مساحة العمل التعارضات
* كيف تتيح git worktrees العزل
* الفرق بين مساحة العمل الأساسية ومساحات العمل
* كيف تظهر مساحات العمل الحالية والمدارة بواسطة Verdent في الواجهة
* أفضل ممارسات إدارة مساحات العمل

***

## ما هو عزل مساحة العمل؟ [#ما-هو-عزل-مساحة-العمل]

عندما يشغّل Verdent العمل في مساحات عمل منفصلة، لا تعدّل التغييرات من worktree واحد ملفات أو حالة staging في worktree آخر. هذا يجعل التنفيذ والمراجعة بالتوازي أكثر أمانًا.

### كيف يعمل [#كيف-يعمل]

| الطبقة      | كيف تعمل                                            |
| ----------- | --------------------------------------------------- |
| **الدليل**  | كل مساحة عمل هي دليل معزول                          |
| **الفرع**   | لكل مساحة عمل فرع مسحوب خاص بها                     |
| **الملفات** | تغييرات الملفات في مساحة عمل واحدة لا تؤثر في غيرها |
| **Staging** | لكل مساحة عمل منطقة staging خاصة بها                |

### الفوائد [#الفوائد]

<CardGroup cols="2">
  <Card title="انعدام التداخل" icon="shield-halved">
    تبقى تغييرات الملفات في أدلة worktree منفصلة
  </Card>

  <Card title="تجربة آمنة" icon="flask">
    جرّب تغييرات محفوفة بالمخاطر دون التأثير في الكود المستقر
  </Card>

  <Card title="مقارنة واضحة" icon="code-compare">
    استخدم git diff لمقارنة الأساليب عبر مساحات العمل
  </Card>

  <Card title="إعادة تأسيس انتقائية" icon="code-merge">
    أعد تأسيس النتائج التي تثق بها فقط
  </Card>
</CardGroup>

***

## مساحة العمل الأساسية مقابل مساحات العمل [#مساحة-العمل-الأساسية-مقابل-مساحات-العمل]

### مساحة العمل الأساسية [#مساحة-العمل-الأساسية]

مساحة العمل الأساسية هي نسخة المستودع الأصلية لديك، وتعمل كنقطة بداية افتراضية.

| الخاصية           | الوصف                                  |
| ----------------- | -------------------------------------- |
| **الموقع**        | موقع git clone أو git init الأصلي لديك |
| **الفرع الأساسي** | يكون عادة على main أو فرع التطوير      |
| **نقطة مرجعية**   | مصدر لمقارنة العمل التجريبي            |

**متى تستخدم Base:**

* تغييرات سريعة لا تحتاج إلى عزل
* نقطة مرجعية لمقارنة العمل التجريبي
* عندما تريد أن تذهب التغييرات مباشرة إلى الفرع الرئيسي
* مهام بسيطة لا تحتاج إلى تنفيذ متواز

### مساحة العمل [#مساحة-العمل]

مساحة العمل هي بيئة عمل معزولة تُنشأ باستخدام git worktrees، ولها فرع مسحوب وحالة ملفات مستقلان خاصان بها.

يمكن أن يستخدم Verdent مساحة عمل عندما يحتاج سير عمل مدعوم إلى تغييرات كود معزولة. تبقى مساحات العمل الحالية مرتبطة بمشروعها ويمكن أن تحتوي على عدة مهام.

***

## العمل مع مساحات العمل الحالية [#العمل-مع-مساحات-العمل-الحالية]

تبقى مساحات العمل التي تنتمي بالفعل إلى مشروع مجمّعة مع ذلك المشروع في لوحة المشاريع. حدد مساحة عمل لعرض مهامها وحالة ملفاتها.

* تشارك المهام داخل مساحة العمل نفسها ملفاتها، لكنها تحتفظ بسياق محادثة منفصل.
* يؤدي الانتقال إلى مساحة عمل أخرى إلى تغيير سياق worktree والفرع النشطين.
* يؤدي تكرار رد إلى إبقاء المهمة المكررة في مساحة العمل الحالية.
* احذف مساحة العمل فقط بعد commit أو rebase أو حفظ العمل الذي تحتاجه بطريقة أخرى.

***

## إعادة تأسيس تغييرات مساحة العمل [#إعادة-تأسيس-تغييرات-مساحة-العمل]

عندما تكون جاهزًا لدمج تغييرات مساحة العمل مرة أخرى في الفرع الرئيسي:

### استخدام واجهة Verdent [#استخدام-واجهة-verdent]

<Steps>
  <Step title="إكمال العمل">
    أكمل العمل في مساحة العمل
  </Step>

  <Step title="مراجعة التغييرات">
    حدد **تغييرات المهمة** في اللوحة الوسطى لمراجعة كل التعديلات
  </Step>

  <Step title="إعادة التأسيس إلى الفرع الرئيسي">
    حدد **إجراءات مساحة العمل ← إعادة التأسيس إلى الفرع الرئيسي** في شريط مساحة العمل
  </Step>

  <Step title="حل التعارضات">
    حل أي تعارضات إذا طُلب منك ذلك
  </Step>

  <Step title="التحقق">
    راجع التغييرات قبل التأكيد
  </Step>
</Steps>

### إبقاء مساحات العمل محدثة [#إبقاء-مساحات-العمل-محدثة]

استخدم **إجراءات مساحة العمل ← المزامنة مع الفرع الرئيسي** لجلب أحدث التغييرات من الفرع الرئيسي إلى مساحة عملك. يساعد ذلك على منع التعارضات الكبيرة عند إعادة التأسيس.

***

## أفضل الممارسات [#أفضل-الممارسات]

### صيانة مساحة العمل [#صيانة-مساحة-العمل]

| الممارسة                                 | السبب                                 |
| ---------------------------------------- | ------------------------------------- |
| **احذف مساحات العمل التي أُعيد تأسيسها** | تحرير مساحة على القرص                 |
| **أزل التجارب المتروكة**                 | إبقاء قائمة مساحات العمل سهلة الإدارة |
| **حافظ على عدد معقول من مساحات العمل**   | موارد النظام محدودة                   |

### نظافة Git [#نظافة-git]

| الممارسة                   | السبب                                             |
| -------------------------- | ------------------------------------------------- |
| **نفّذ commit بشكل متكرر** | نفّذ commit للعمل قيد التقدم قبل الانتقال         |
| **استخدم commits صغيرة**   | يسهل تنفيذ cherry-pick للـ commits الأصغر         |
| **زامن مع الأساس بانتظام** | لا تدع مساحات العمل تبتعد كثيرًا عن الفرع الرئيسي |
| **قلّل تعقيد التعارضات**   | يمنع الدمج المنتظم التعارضات الكبيرة              |

***

## الأسئلة الشائعة [#الأسئلة-الشائعة]

<AccordionGroup>
  <Accordion title="ما مقدار مساحة القرص التي تستخدمها كل مساحة عمل؟">
    تكرّر كل مساحة عمل ملفات العمل، لكنها تشارك دليل `.git`. يساوي استخدام المساحة تقريبًا حجم مشروعك لكل مساحة عمل. ستستخدم المشاريع الكبيرة ذات مساحات العمل المتوازية العديدة مساحة كبيرة على القرص.
  </Accordion>

  <Accordion title="هل يمكنني حذف مساحة عمل؟">
    نعم. احذف مساحة العمل من خلال Verdent. يزيل هذا الدليل، لكنه يحافظ على أي عمل تم تنفيذ commit له على الفرع.
  </Accordion>

  <Accordion title="كيف أنشئ مساحة عمل جديدة؟">
    الإنشاء اليدوي غير متاح في واجهة Desktop الحالية. إدخال **مساحة عمل جديدة** والاختصار مخفيان. لا يزال بإمكان Verdent استخدام مساحات العمل داخليًا لسير العمل المعزول المدعوم.
  </Accordion>

  <Accordion title="ماذا يحدث للتغييرات غير الملتزم بها إذا حذفت مساحة عمل؟">
    تُفقد التغييرات غير الملتزم بها عند حذف مساحة عمل. نفّذ commit أو stash للتغييرات دائمًا قبل إزالة مساحة عمل.
  </Accordion>

  <Accordion title="هل يمكنني تحويل مساحة عمل إلى مساحة العمل الأساسية؟">
    لا يوجد تحويل مباشر، لكن يمكنك إعادة تأسيس كل التغييرات من مساحة العمل إلى الفرع الرئيسي، ثم حذف مساحة العمل. يتم الحفاظ على سجل الفرع.
  </Accordion>

  <Accordion title="هل تعمل worktrees مع كل خدمات استضافة git؟">
    نعم. worktrees في Git ميزة قياسية في git. تعمل مع GitHub وGitLab وBitbucket وأي خدمة استضافة git أخرى.
  </Accordion>
</AccordionGroup>
