'\" t .TH "CARGO\-ADD" "1" .nh .ad l .ss \n[.ss] 0 .SH "نام (NAME)" cargo\-add \- افزودن وابستگی‌ها به فایل مانیفست Cargo.toml .SH "خلاصه دستور (SYNOPSIS)" \fBcargo add\fR [\fIگزینه‌ها\fR] \fIcrate\fR\[u2026] .br \fBcargo add\fR [\fIگزینه‌ها\fR] \fB\-\-path\fR \fIpath\fR .br \fBcargo add\fR [\fIگزینه‌ها\fR] \fB\-\-git\fR \fIurl\fR [\fIcrate\fR\[u2026]] .SH "توضیحات (DESCRIPTION)" این دستور می‌تواند وابستگی‌ها را اضافه کرده یا تغییر دهد. .sp منبع وابستگی را می‌توان با موارد زیر مشخص کرد: .sp .RS 4 \h'-04'\(bu\h'+03'\fIcrate\fR\fB@\fR\fIversion\fR: دریافت از یک رجیستری با قید نگارش \[lq]\fIversion\fR\[rq] .RE .sp .RS 4 \h'-04'\(bu\h'+03'\fB\-\-path\fR \fIpath\fR: دریافت از \fIpath\fR مشخص‌شده .RE .sp .RS 4 \h'-04'\(bu\h'+03'\fB\-\-git\fR \fIurl\fR: دریافت از یک مخزن git در \fIurl\fR .RE .sp اگر هیچ منبعی مشخص نشود، بهترین تلاش برای انتخاب یک منبع صورت خواهد گرفت، شامل: .sp .RS 4 \h'-04'\(bu\h'+03'وابستگی‌های موجود در سایر جدول‌ها (مانند \fBdev\-dependencies\fR) .RE .sp .RS 4 \h'-04'\(bu\h'+03'اعضای workspace .RE .sp .RS 4 \h'-04'\(bu\h'+03'آخرین نسخهٔ منتشرشده در رجیستری .RE .sp هنگامی که بسته‌ای را اضافه می‌کنید که از پیش وجود دارد، مدخل موجود با پرچم‌های مشخص‌شده به‌روزرسانی خواهد شد. .sp پس از اجرای موفقیت‌آمیز، \fIویژگی‌های\fR فعال (\fB+\fR) و غیرفعال (\fB\-\fR) وابستگیِ مشخص‌شده در خروجی دستور فهرست خواهند شد. .SH "گزینه‌ها (OPTIONS)" .SS "گزینه‌های منبع (Source options)" .sp \fB\-\-git\fR \fIurl\fR .RS 4 \fIآدرس اینترنتی Git برای افزودن crate مشخص‌شده از آن\fR \&. .RE .sp \fB\-\-branch\fR \fIbranch\fR .RS 4 شاخه‌ای که هنگام افزودن از git استفاده می‌شود. .RE .sp \fB\-\-tag\fR \fItag\fR .RS 4 برچسبی (tag) که هنگام افزودن از git استفاده می‌شود. .RE .sp \fB\-\-rev\fR \fIsha\fR .RS 4 کامیت مشخصی که هنگام افزودن از git استفاده می‌شود. .RE .sp \fB\-\-path\fR \fIpath\fR .RS 4 \fIمسیر سیستم فایل\fR به crate محلی برای افزودن. .RE .sp \fB\-\-base\fR \fIbase\fR .RS 4 مبنای مسیر (\fIpath base\fR ) مورد استفاده هنگام افزودن crate محلی. .sp \fIناپایدار (تنها در nightly)\fR .RE .sp \fB\-\-registry\fR \fIregistry\fR .RS 4 نام رجیستری مورد استفاده. نام‌های رجیستری در \fIفایل‌های پیکربندی Cargo\fR تعریف می‌شوند. اگر مشخص نشود، از رجیستری پیش‌فرض استفاده می‌شود که توسط کلید پیکربندی \fBregistry.default\fR تعریف شده و پیش‌فرض آن \fBcrates\-io\fR است.\& .RE.SS "گزینه‌های بخش (Section options)" .sp \fB\-\-dev\fR .RS 4 افزودن به عنوان یک \fIوابستگی توسعه\fR \&. .RE .sp \fB\-\-build\fR .RS 4 افزودن به عنوان یک \fIوابستگی ساخت\fR \&. .RE .sp \fB\-\-target\fR \fItarget\fR .RS 4 افزودن به عنوان وابستگی برای \fIسکوی هدف داده‌شده\fR \&. .sp برای جلوگیری از بسط‌های غیرمنتظره در پوسته، می‌توانید در اطراف هر هدف از علامت نقل‌قول استفاده کنید، مانند \fB\-\-target 'cfg(unix)'\fR\&. .RE .SS "گزینه‌های وابستگی (Dependency options)" .sp \fB\-\-dry\-run\fR .RS 4 در عمل تغییرات را در مانیفست ثبت نمی‌کند .RE .sp \fB\-\-rename\fR \fIname\fR .RS 4 \fIتغییر نام\fR وابستگی. .RE .sp \fB\-\-optional\fR .RS 4 علامت‌گذاری وابستگی به عنوان \fIاختیاری\fR \&. .RE .sp \fB\-\-no\-optional\fR .RS 4 علامت‌گذاری وابستگی به عنوان \fIضروری\fR \&. .RE .sp \fB\-\-public\fR .RS 4 علامت‌گذاری وابستگی به صورت عمومی (public). .sp این وابستگی می‌تواند در API عمومی کتابخانه شما مورد ارجاع قرار گیرد. .sp \fIناپایدار (فقط nightly)\fR .RE .sp \fB\-\-no\-public\fR .RS 4 علامت‌گذاری وابستگی به صورت خصوصی (private). .sp اگرچه می‌توانید از این crate در پیاده‌سازی خود استفاده کنید، اما نمی‌توان در API عمومی شما به آن ارجاع داد. .sp \fIناپایدار (فقط nightly)\fR .RE .sp \fB\-\-no\-default\-features\fR .RS 4 غیرفعال‌سازی \fIویژگی‌های پیش‌فرض\fR \&. .RE .sp \fB\-\-default\-features\fR .RS 4 فعال‌سازی مجدد \fIویژگی‌های پیش‌فرض\fR \&. .RE .sp \fB\-F\fR \fIfeatures\fR, \fB\-\-features\fR \fIfeatures\fR .RS 4 فهرستی از \fIویژگی‌ها برای فعال‌سازی\fR \& که با فاصله یا کاما از یکدیگر جدا شده‌اند. هنگام افزودن چندین crate، ویژگی‌های یک crate خاص را می‌توان با نحو \fBpackage\-name/feature\-name\fR فعال کرد. این پرچم می‌تواند چندین بار مشخص شود که تمام ویژگی‌های تعیین‌شده را فعال می‌کند. .RE .SS "گزینه‌های نمایش (Display Options)" .sp \fB\-v\fR, \fB\-\-verbose\fR .RS 4 استفاده از خروجی پرگو (verbose). می‌تواند دو بار برای خروجی \[lq]بسیار پرگو\[rq] مشخص شود که شامل خروجی‌های اضافی مانند هشدارهای وابستگی و خروجی اسکریپت ساخت است. همچنین می‌تواند با \fIمقدار پیکربندی\fR \fBterm.verbose\fR \& مشخص شود. .RE .sp \fB\-q\fR, \fB\-\-quiet\fR .RS 4 پیام‌های گزارش لاگ cargo را چاپ نمی‌کند. همچنین می‌تواند با \fIمقدار پیکربندی\fR \fBterm.quiet\fR \& مشخص شود. .RE .sp \fB\-\-color\fR \fIwhen\fR .RS 4 کنترل زمان استفاده از خروجی رنگی. مقادیر معتبر: .sp .RS 4 \h'-04'\(bu\h'+03'\fBauto\fR (پیش‌فرض): تشخیص خودکار اینکه آیا پشتیبانی از رنگ در ترمینال موجود است یا خیر. .RE .sp .RS 4 \h'-04'\(bu\h'+03'\fBalways\fR: نمایش همیشگی رنگ‌ها. .RE .sp .RS 4 \h'-04'\(bu\h'+03'\fBnever\fR: هرگز رنگ‌ها را نمایش نده. .RE .sp همچنین می‌تواند با \fIمقدار پیکربندی\fR \fBterm.color\fR \& مشخص شود. .RE.SS "گزینه‌های مانیفست (Manifest Options)" .sp \fB\-\-manifest\-path\fR \fIpath\fR .RS 4 مسیر فایل \fBCargo.toml\fR. به طور پیش‌فرض، Cargo فایل \fBCargo.toml\fR را در دایرکتوری فعلی یا هر یک از دایرکتوری‌های والد جستجو می‌کند. .RE .sp \fB\-p\fR \fIspec\fR, \fB\-\-package\fR \fIspec\fR .RS 4 وابستگی‌ها را تنها به بستهٔ مشخص‌شده اضافه می‌کند. .RE .sp \fB\-\-ignore\-rust\-version\fR .RS 4 نادیده‌گرفتن مشخصهٔ \fBrust\-version\fR در بسته‌ها. .RE .sp \fB\-\-locked\fR .RS 4 تضمین می‌کند که دقیقاً از همان وابستگی‌ها و نسخه‌هایی استفاده شود که هنگام ایجاد اولیهٔ فایل موجود \fBCargo.lock\fR استفاده شده بودند. در صورت بروز هر یک از شرایط زیر، Cargo با خطا خارج خواهد شد: .sp .RS 4 \h'-04'\(bu\h'+03'فایل قفل (lock file) وجود نداشته باشد. .RE .sp .RS 4 \h'-04'\(bu\h'+03'سامانهٔ Cargo به دلیل حل متفاوت وابستگی‌ها، برای تغییر فایل قفل تلاش کند. .RE .sp این گزینه می‌تواند در محیط‌هایی که در آن‌ها ساخت‌های قطعی و تکرارپذیر (deterministic builds) مورد نیاز است، مانند خطوط لولهٔ CI، استفاده شود. .RE .sp \fB\-\-offline\fR .RS 4 از دسترسی Cargo به شبکه به هر دلیلی جلوگیری می‌کند. بدون این گزینه، اگر Cargo نیاز به دسترسی به شبکه داشته باشد و شبکه در دسترس نباشد، با خطا متوقف خواهد شد. با این گزینه، Cargo تلاش خواهد کرد تا در صورت امکان بدون اتصال به شبکه به کار خود ادامه دهد. .sp توجه داشته باشید که این ممکن است به حل وابستگی متفاوتی نسبت به حالت آنلاین منجر شود. Cargo خود را به crateهایی که به صورت محلی بارگیری شده‌اند محدود می‌کند، حتی اگر طبق نسخهٔ محلی نمایه (index)، نسخهٔ جدیدتری موجود باشد. برای بارگیری وابستگی‌ها پیش از رفتن به حالت آفلاین، دستور \fBcargo\-fetch\fR(1) را ببینید. .sp همچنین می‌تواند از طریق \fIمقدار پیکربندی\fR \fBnet.offline\fR \& مشخص شود. .RE .sp \fB\-\-frozen\fR .RS 4 معادل مشخص کردن هم‌زمان هر دو گزینهٔ \fB\-\-locked\fR و \fB\-\-offline\fR\&. .RE .SS "گزینه‌های عمومی (Common Options)" .sp \fB+\fR\fItoolchain\fR .RS 4 اگر Cargo همراه با rustup نصب شده باشد و اولین آرگومان به \fBcargo\fR با \fB+\fR آغاز شود، به عنوان نام زنجیره‌ابزار (toolchain) متعلق به rustup تفسیر خواهد شد (مانند \fB+stable\fR یا \fB+nightly\fR). برای اطلاعات بیشتر دربارهٔ نحوهٔ عملکرد بازنویسی‌های زنجیره‌ابزار، به \fIمستندات rustup\fR مراجعه کنید. .RE .sp \fB\-\-config\fR \fIKEY=VALUE\fR یا \fIPATH\fR .RS 4 یک مقدار پیکربندی Cargo را بازنویسی می‌کند. آرگومان باید به ساختار نحو TOML به صورت \fBKEY=VALUE\fR باشد، یا به عنوان مسیری به یک فایل پیکربندی اضافی ارائه شود. این گزینه می‌تواند چندین بار مشخص شود. برای اطلاعات بیشتر \fIبخش بازنویسی‌های خط فرمان\fR را ببینید. .RE .sp \fB\-C\fR \fIPATH\fR .RS 4 پیش از اجرای هرگونه عملیات مشخص‌شده، دایرکتوری کاری فعلی را تغییر می‌دهد. این بر مواردی مانند جایی که Cargo به طور پیش‌فرض به دنبال مانیفست پروژه (\fBCargo.toml\fR) می‌گردد، و همچنین دایرکتوری‌هایی که برای یافتن \fB\&.cargo/config.toml\fR جستجو می‌شوند، تأثیر می‌گذارد. این گزینه باید پیش از نام دستور قرار گیرد، برای مثال \fBcargo \-C path/to/my\-project build\fR\&. .sp این گزینه فقط در \fIکانال nightly\fR در دسترس است و برای فعال‌سازی به پرچم \fB\-Z unstable\-options\fR نیاز دارد (مشاهدهٔ \fI#10098\fR ). .RE .sp \fB\-h\fR, \fB\-\-help\fR .RS 4 اطلاعات راهنما را نمایش می‌دهد. .RE .sp \fB\-Z\fR \fIflag\fR .RS 4 پرچم‌های ناپایدار (مختص nightly) برای Cargo. برای جزئیات، دستور \fBcargo \-Z help\fR را اجرا کنید. .RE.SH "محیط (ENVIRONMENT)" برای جزئیات درباره متغیرهای محیطی که Cargo می‌خواند، \fIمرجع\fR را ببینید. .SH "وضعیت خروج (EXIT STATUS)" .sp .RS 4 \h'-04'\(bu\h'+03'\fB0\fR: عملیات Cargo با موفقیت انجام شد. .RE .sp .RS 4 \h'-04'\(bu\h'+03'\fB101\fR: عملیات Cargo با شکست مواجه شد. .RE .SH "مثال‌ها (EXAMPLES)" .sp .RS 4 \h'-04' 1.\h'+01'افزودن \fBregex\fR به‌عنوان یک وابستگی .sp .RS 4 .nf cargo add regex .fi .RE .RE .sp .RS 4 \h'-04' 2.\h'+01'افزودن \fBtrybuild\fR به‌عنوان یک وابستگی توسعه (dev\-dependency) .sp .RS 4 .nf cargo add \-\-dev trybuild .fi .RE .RE .sp .RS 4 \h'-04' 3.\h'+01'افزودن نسخه‌ای قدیمی‌تر از \fBnom\fR به‌عنوان یک وابستگی .sp .RS 4 .nf cargo add nom@5 .fi .RE .RE .sp .RS 4 \h'-04' 4.\h'+01'افزودن پشتیبانی از سریال‌سازی ساختارهای داده به json با استفاده از \fBderive\fRها .sp .RS 4 .nf cargo add serde serde_json \-F serde/derive .fi .RE .RE .sp .RS 4 \h'-04' 5.\h'+01'افزودن \fBwindows\fR به‌عنوان یک وابستگی ویژه پلتفرم در \fBcfg(windows)\fR .sp .RS 4 .nf cargo add windows \-\-target 'cfg(windows)' .fi .RE .RE .SH "همچنین ببینید (SEE ALSO)" \fBcargo\fR(1), \fBcargo\-remove\fR(1)