پالت فرمان

دنبال فرمانی برای اجرا بگردید…

ZarynZaryn
راهنماها·۵ دقیقه مطالعه

چطور…؟

پاسخ کوتاه به کارهایی که بیشتر از همه لازم می‌شوند. کارتان را در فهرست کنار صفحه پیدا کنید، یا / را بزنید و جست‌وجو کنید.

## شروع ### کنترل نسخه را در پوشه‌ای که از قبل دارم شروع کنم ```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 ``` هر خط کامیت و نویسنده‌ای را نشان می‌دهد که آخرین بار تغییرش داده است. بعد `zev show <commit>` کل آن تغییر را نشان می‌دهد. ## برگرداندن ### تغییراتم در یک فایل را دور بریزم ```bash zev restore path/to/file ``` فایل به حالتش در آخرین کامیت برمی‌گردد. آن ویرایش‌ها برای همیشه می‌روند، پس اگر مطمئن نیستید اول stash کنید. ### همهٔ تغییرات کامیت‌نشده را دور بریزم ```bash zev restore . ``` فایل‌های تازه‌ای که هرگز add نشده‌اند می‌مانند؛ اگر نمی‌خواهیدشان خودتان پاکشان کنید. ### فایلی را از مرحله‌بندی خارج کنم (اشتباهی add کردم) ```bash zev restore --staged path/to/file ``` ویرایش‌هایتان در فایل می‌مانند؛ فقط در کامیت بعدی نمی‌رود. ### تغییراتم را موقتاً کنار بگذارم ```bash zev stash save "داشتم چه کار می‌کردم" # ...کار دیگری، جابه‌جایی شاخه، pull... 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 "حذف فایل قدیمی" ``` یا هر طور خواستید پاکش کنید و بعد `zev add path/to/file` (یا `zev add .`) حذف را مرحله‌بندی کند. ### یک فایل را تغییر نام دهم یا جابه‌جا کنم فایل را عادی تغییر نام دهید، بعد هم نام قدیم و هم نام جدید را مرحله‌بندی کنید: ```bash mv old-name.txt new-name.txt zev add old-name.txt new-name.txt zev commit -m "تغییر نام old-name به new-name" ``` `zev add .` هم هر دو را با هم مرحله‌بندی می‌کند. ### فایلی را دیگر دنبال نکنم اما نگهش دارم مثلاً فایل تنظیماتی با رمزها که اشتباهی کامیت شده: ```bash zev rm --cached .env echo ".env" >> .zevignore zev add .zevignore zev commit -m "دیگر .env دنبال نشود" ``` اگر رازهای واقعی داشت و قبلاً push کرده‌اید، آن رازها را عوض کنید: هنوز در تاریخچه هستند. ### نادیده گرفتن فایل‌ها (خروجی ساخت، لاگ‌ها، رازها) در پوشهٔ اصلی پروژه فایلی به نام `.zevignore` بسازید، هر الگو در یک خط: ```text node_modules/ dist/ *.log .env ``` `zev status` و `zev add .` از فایل‌های نادیده‌گرفته‌شده می‌گذرند. `.zevignore` را کامیت کنید تا هم‌تیمی‌ها هم همان فایل‌ها را نادیده بگیرند. `zev new` برای زبان اصلی‌ای که انتخاب می‌کنید یک فایل مناسب می‌نویسد. ## شاخه‌ها ### روی چیزی کار کنم بی‌آنکه به main دست بزنم ```bash zev checkout -b my-feature ``` مثل همیشه کامیت کنید؛ `main` تا وقتی ادغام نکنید تغییر نمی‌کند. ### با تغییرات نیمه‌کاره شاخه عوض کنم ```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/fa/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 ``` ### مشارکت در پروژه‌ای که نمی‌توانم در آن push کنم ```bash zev fork-repo owner/project --clone cd project # ...تغییرتان را کامیت کنید... zev push zev pr ``` ### باگی را گزارش کنم یا ایده‌ای پیشنهاد دهم ```bash zev issue --title "جست‌وجو اعراب را نادیده می‌گیرد" --desc "جست‌وجوی café، cafe را پیدا نمی‌کند" ``` یا در صفحهٔ مخزن روی Zaryn یک issue باز کنید. ### فایلی را با یک پیوند برای کسی بفرستم **ذخیره‌سازی** را از منوی بالا باز کنید، فایل را روی **بارگذاری فایل** رها کنید و **کپی پیوند** را بزنید. هر کسی با این پیوند می‌تواند فایل را باز کند، پس فقط فایل‌هایی را بفرستید که خصوصی نیستند. بیشتر در [ذخیره و هم‌رسانی فایل‌ها](/docs/fa/storing-files). ### یک مخزن را حذف کنم مخزن را باز کنید و **⚙ تنظیمات** را بزنید (برای مخزن توپولوژی، در نمای کلی شبکه‌اش). پایین، زیر **منطقهٔ خطر**، نام مخزن را بنویسید و **حذف این مخزن** را بزنید. تاریخچه، شاخه‌ها، درخواست‌های ادغام، مسئله‌ها و همهٔ فایل‌هایی که برایش نگه داشته شده پاک می‌شوند و برگشتی ندارد. مالک مخزن این کار را می‌تواند، و مالک یا مدیر سازمانش هم. ### ببینم چقدر فضا برایم مانده نوارهای بالای **ذخیره‌سازی**، مخزن‌ها، فایل‌ها و بسته‌ها را در برابر طرحتان نشان می‌دهند. ## خود zev ### zev را به‌روز کنم ```bash zev self update ``` اگر با apt، dnf، zypper یا pacman نصبش کرده‌اید، به‌روزرسانی معمول سیستم این کار را می‌کند (`zev self update` دستورش را می‌گوید). ### دستوری را که یادم رفته پیدا کنم ```bash zev help zev help stash ``` یا [همهٔ دستورات](/docs/fa/commands) را ببینید. ### از zev روی سرور، در CI یا با یک عامل هوش مصنوعی استفاده کنم [اسکریپت‌نویسی و عامل‌های هوش مصنوعی](/docs/fa/automation-and-agents) را ببینید.