CARGO-FETCH(1) General Commands Manual CARGO-FETCH(1)

cargo-fetch - دریافت وابستگی‌های یک بسته از شبکه

cargo fetch [گزینه‌ها]

اگر فایل Cargo.lock در دسترس باشد، این دستور اطمینان حاصل می‌کند که تمام وابستگی‌های git و/یا وابستگی‌های رجیستری بارگیری شده و به صورت محلی در دسترس هستند. دستورات بعدی Cargo پس از اجرای یک cargo fetch قادر خواهند بود به صورت آفلاین اجرا شوند، مگر اینکه فایل قفل تغییر کند.

اگر فایل قفل در دسترس نباشد، این دستور پیش از دریافت وابستگی‌ها، فایل قفل را ایجاد خواهد کرد.

اگر --target مشخص نشده باشد، تمام وابستگی‌های هدف دریافت می‌شوند.

همچنین افزونهٔ cargo-prefetch https://crates.io/crates/cargo-prefetch را ببینید که دستوری برای بارگیری crateهای پرکاربرد اضافه می‌کند. اگر قصد دارید از Cargo بدون شبکه با پرچم --offline استفاده کنید، این افزونه می‌تواند مفید باشد.

--target triple

دریافت برای معماری هدف مشخص‌شده. این پرچم می‌تواند چندین بار مشخص شود. مقدار پیش‌فرض، همهٔ معماری‌ها است. ساختار کلی triple به صورت <arch><sub>-<vendor>-<sys>-<abi> است.

مقادیر ممکن:

•هر هدف پشتیبانی‌شده در rustc --print target-list.
•"host-tuple"، که در داخل با هدف سیستم میزبان جایگزین خواهد شد. این گزینه به‌ویژه هنگامی مفید است که در حال کامپایل متقابل برخی از crateها هستید و نمی‌خواهید ماشین میزبان خود را به عنوان یک هدف مشخص کنید (به عنوان مثال، یک xtask در یک پروژهٔ مشترک که ممکن است توسط چندین میزبان مختلف روی آن کار شود).
•مسیری به یک مشخصات سفارشی هدف. برای اطلاعات بیشتر Custom Target Lookup Path https://doc.rust-lang.org/rustc/targets/custom.html#custom-target-lookup-path را ببینید.

این مورد را می‌توان با مقدار پیکربندی build.target https://doc.rust-lang.org/cargo/reference/config.html نیز مشخص کرد.

توجه داشته باشید که تعیین این پرچم باعث می‌شود Cargo در حالت متفاوتی اجرا شود که در آن مصنوعات هدف در یک دایرکتوری جداگانه قرار می‌گیرند. برای جزئیات بیشتر به مستندات build cache https://doc.rust-lang.org/cargo/reference/build-cache.html مراجعه کنید.

-v, --verbose

استفاده از خروجی پرگو (verbose). می‌تواند دو بار برای خروجی «بسیار پرگو» مشخص شود که شامل خروجی‌های اضافی مانند هشدارهای وابستگی و خروجی اسکریپت ساخت است. همچنین می‌تواند با مقدار پیکربندی term.verbose https://doc.rust-lang.org/cargo/reference/config.html مشخص شود.

-q, --quiet

پیام‌های لاگ cargo را چاپ نمی‌کند. همچنین می‌تواند با مقدار پیکربندی term.quiet https://doc.rust-lang.org/cargo/reference/config.html مشخص شود.

--color when

کنترل زمان استفاده از خروجی رنگی. مقادیر معتبر:
•auto (پیش‌فرض): تشخیص خودکار اینکه آیا پشتیبانی از رنگ در ترمینال موجود است یا خیر.
•always: همیشه رنگ‌ها را نمایش بده.
•never: هرگز رنگ‌ها را نمایش نده.

همچنین می‌تواند با مقدار پیکربندی term.color https://doc.rust-lang.org/cargo/reference/config.html مشخص شود.

--manifest-path path

مسیر فایل Cargo.toml. به صورت پیش‌فرض، Cargo فایل Cargo.toml را در دایرکتوری جاری یا هر دایرکتوری والد جستجو می‌کند.

--locked

تأیید می‌کند که دقیقاً از همان وابستگی‌ها و نسخه‌هایی استفاده می‌شود که فایل Cargo.lock موجود در ابتدا با آن‌ها تولید شده است. Cargo در صورت بروز هر یک از شرایط زیر با یک خطا خارج خواهد شد:
•فایل قفل موجود نباشد.
•برنامه Cargo به دلیل تفکیک و حل وابستگی متفاوت، برای تغییر فایل قفل تلاش کند.

می‌تواند در محیط‌هایی که ساخت‌های قطعی و تکرارپذیر مورد نظر است، مانند خطوط لوله CI، استفاده شود.

--offline

از دسترسی Cargo به شبکه به هر دلیلی جلوگیری می‌کند. بدون این پرچم، اگر Cargo نیاز به دسترسی به شبکه داشته باشد و شبکه در دسترس نباشد، با یک خطا متوقف خواهد شد. با این پرچم، Cargo در صورت امکان تلاش خواهد کرد بدون شبکه پیش برود.

توجه داشته باشید که این ممکن است به حل وابستگی متفاوتی نسبت به حالت آنلاین منجر شود. Cargo خود را به crateهایی که به صورت محلی بارگیری شده‌اند محدود می‌کند، حتی اگر نسخهٔ جدیدتری در رونوشت محلی نمایه وجود داشته باشد.

همچنین می‌تواند با مقدار پیکربندی net.offline https://doc.rust-lang.org/cargo/reference/config.html مشخص شود.

--frozen

معادل مشخص کردن هم‌زمان --locked و --offline است.

+toolchain

اگر Cargo با rustup نصب شده باشد و اولین آرگومان به cargo با + آغاز شود، به عنوان یک نام زنجیره ابزار rustup تفسیر خواهد شد (مانند +stable یا +nightly). برای اطلاعات بیشتر در مورد چگونگی کارکرد بازنویسی‌های زنجیره ابزار، به مستندات rustup https://rust-lang.github.io/rustup/overrides.html مراجعه کنید.

--config KEY=VALUE یا PATH

یک مقدار پیکربندی Cargo را بازنویسی می‌کند. آرگومان باید در ساختار نحوی TOML به صورت KEY=VALUE باشد، یا به عنوان یک مسیر به یک فایل پیکربندی اضافی ارائه شود. این پرچم می‌تواند چندین بار مشخص شود. برای اطلاعات بیشتر بخش command-line overrides https://doc.rust-lang.org/cargo/reference/config.html#command-line-overrides را ببینید.

-C PATH

دایرکتوری کاری فعلی را قبل از اجرای هر عملیات مشخص‌شده تغییر می‌دهد. این مورد بر مواردی مانند محل پیش‌فرضی که cargo در آن به دنبال مانیفست پروژه (Cargo.toml) می‌گردد، و همچنین دایرکتوری‌های جستجو شده برای کشف .cargo/config.toml تأثیر می‌گذارد. این گزینه باید قبل از نام دستور قرار گیرد، برای مثال cargo -C path/to/my-project build.

این گزینه فقط در کانال nightly https://doc.rust-lang.org/book/appendix-07-nightly-rust.html در دسترس است و برای فعال‌سازی به پرچم -Z unstable-options نیاز دارد (به #10098 https://github.com/rust-lang/cargo/issues/10098 مراجعه کنید).

-h, --help

اطلاعات راهنما را چاپ می‌کند.

-Z flag

پرچم‌های ناپایدار (تنها در نسخه‌های nightly) برای Cargo. برای جزئیات دستور cargo -Z help را اجرا کنید.

برای جزئیات بیشتر در مورد متغیرهای محیطی که Cargo می‌خواند، مرجع https://doc.rust-lang.org/cargo/reference/environment-variables.html را ببینید.

•0: دستور Cargo با موفقیت اجرا شد.
•101: اجرای Cargo با خطا مواجه شد.

1.دریافت تمام وابستگی‌ها:
cargo fetch

cargo(1), cargo-update(1), cargo-generate-lockfile(1)