Command Palette

Search for a command to run…

ZarynZaryn
أدلة·3 min read

كيف أفعل…؟

إجابات قصيرة لأكثر ما يحتاجه الناس. ابحث عن مهمتك في القائمة الجانبية، أو اضغط / للبحث.

## البداية ### أبدأ التحكم في الإصدارات في مجلد لدي ```bash cd my-folder zev init zev add . zev commit -m "النسخة الأولى" ``` ### أنقل مشروعًا من Zaryn إلى حاسوبي ```bash zev clone owner/project ``` صفحة المستودع على Zaryn تعرض هذا الأمر بالعنوان الصحيح. ### أضع مشروعي على Zaryn ```bash zev login zaryn.xyz --register your-name --email you@example.com # مرة لكل حاسوب zev new zev push ``` ## الحفظ والاطلاع ### أرى ما الذي غيّرته ```bash zev status # أي ملفات zev diff # أي أسطر ``` ### أحفظ بعض تغييراتي فقط جهّز تلك الملفات وحدها ثم أودِع: ```bash zev add src/login.js src/login.css zev commit -m "إصلاح نموذج الدخول" ``` يبقى الباقي متغيّرًا دون إيداع. ### أتحقق مما سأودعه ```bash zev diff --staged ``` ### أرى سجل المشروع ```bash zev log --oneline ``` ### أرى ما غيّره إيداع واحد ```bash zev show 47bec4f5 ``` ### أعرف من غيّر سطرًا ومتى ```bash zev blame path/to/file ``` ## التراجع ### أتخلص من تغييراتي على ملف ```bash zev restore path/to/file ``` يعود الملف كما كان في آخر إيداع. تلك التعديلات تضيع نهائيًا، فضعها جانبًا (stash) أولًا إن لم تكن متأكدًا. ### أتخلص من كل تغييراتي غير المودعة ```bash zev restore . ``` ### ألغي تجهيز ملف (أضفته بالخطأ) ```bash zev restore --staged path/to/file ``` تبقى تعديلاتك في الملف؛ لن يدخل الإيداع التالي فقط. ### أضع تغييراتي جانبًا لحظة ```bash zev stash save "ما كنت أفعله" # ...افعل شيئًا آخر، بدّل الفرع، اجلب... zev stash pop ``` ### أستعيد ملفًا حذفته إن كان في آخر إيداع: ```bash zev restore path/to/file ``` ### أنظر إلى نسخة قديمة من المشروع لا يستطيع zev بعد نقل مجلدك إلى إيداع قديم، لكن يمكنك الاطلاع على أي إيداع دون تغيير ملفاتك: ```bash zev show <commit> zev diff <commit> HEAD -- file ``` ### أتراجع عن إيداع أنشأته لا يعيد zev كتابة الإيداعات. أنشئ إيداعًا جديدًا يلغيه: أعد الملفات كما تريدها ثم أودِع. يعرض `zev diff <commit>~1 <commit>` بالضبط ما غيّره ذلك الإيداع. ## الملفات ### أحذف ملفًا ```bash zev rm path/to/file zev commit -m "حذف الملف القديم" ``` ### أعيد تسمية ملف أو أنقله غيّر اسمه كالمعتاد ثم جهّز الاسم القديم والجديد: ```bash mv old-name.txt new-name.txt zev add old-name.txt new-name.txt zev commit -m "إعادة تسمية" ``` ### أوقف تتبع ملف مع إبقائه ```bash zev rm --cached .env echo ".env" >> .zevignore zev add .zevignore zev commit -m "إيقاف تتبع .env" ``` إن كان يحتوي أسرارًا حقيقية وقد أرسلته، فغيّر تلك الأسرار: ما زالت في السجل. ### أتجاهل ملفات (مخرجات البناء، السجلات، الأسرار) أنشئ ملفًا اسمه `.zevignore` في المجلد الأعلى للمشروع، نمط في كل سطر: ```text node_modules/ dist/ *.log .env ``` ## الفروع ### أعمل على شيء دون المساس بـ main ```bash zev checkout -b my-feature ``` ### أبدّل الفرع ولدي تغييرات غير مكتملة ```bash zev stash zev checkout other-branch # ...لاحقًا... zev checkout my-feature zev stash pop ``` ### أدخل فرعي إلى main ```bash zev checkout main zev merge my-feature ``` ### أحل تعارض دمج ```bash zev merge my-feature --resolve # عدّل الملفات التي يذكرها: أبقِ ما تريده بين <<<<<<< و>>>>>>> واحذف العلامات zev add . zev merge --continue ``` الشرح الكامل في [الفروع والدمج](/docs/ar/branches). ### أعلّم إصدارًا ```bash zev tag v1.0 ``` ## المشاركة والعمل معًا ### أحصل على آخر تغييرات زملائي ```bash zev pull ``` ### أرسل إيداعاتي ```bash zev push ``` ### أطلب مراجعة قبل الدمج ```bash zev checkout -b fix-header zev commit -m "إصلاح الترويسة على الهواتف" zev push zev pr ``` ### أساهم في مشروع لا أستطيع الإرسال إليه ```bash zev fork-repo owner/project --clone cd project zev push zev pr ``` ### حذف مستودع افتح المستودع واضغط **⚙ Settings** (لمستودع الطوبولوجيا: في نظرة الشبكة العامة). في الأسفل، تحت **Danger zone**، اكتب اسم المستودع واضغط **Delete this repository**. يُحذف تاريخه وفروعه وطلبات الدمج والقضايا وكل ملف مخزَّن له، ولا يمكن التراجع. يستطيع ذلك مالكه، وكذلك مالك منظمته أو مديرها. ## zev نفسه ### أحدّث zev ```bash zev self update ``` إن ثبّته بـ apt أو dnf أو zypper أو pacman، فالتحديث المعتاد لنظامك يكفي. ### أجد أمرًا نسيته ```bash zev help zev help stash ``` أو راجع [كل الأوامر](/docs/ar/commands).