BUNDLE-LOCK(1) General Commands Manual BUNDLE-LOCK(1)

bundle-lock - ایجاد یا به‌روزرسانی یک lockfile بدون انجام نصب

bundle lock [--update] [--bundler[=BUNDLER]] [--local] [--print] [--lockfile=PATH] [--full-index] [--gemfile=GEMFILE] [--add-checksums] [--add-platform] [--remove-platform] [--normalize-platforms] [--patch] [--minor] [--major] [--pre] [--strict] [--conservative]

قفل کردن gemهای مشخص‌شده در Gemfile.

فایل lockfile موجود را نادیده می‌گیرد. وابستگی‌ها را بازسنجی کرده و سپس lockfile را به‌روزرسانی می‌کند. فهرستی از gemها را دریافت می‌کند یا در صورت مشخص نشدن فهرست، تمامی gemها را به‌روزرسانی می‌نماید.
نسخهٔ قفل‌شدهٔ bundler را به نسخهٔ داده‌شده یا در صورت مشخص نشدن نسخه، به آخرین نسخه به‌روزرسانی می‌کند.
برای اتصال به rubygems.org تلاش نمی‌کند. در عوض، Bundler از gemهای موجود در حافظهٔ موقت (کَش) Rubygems یا در vendor/cache استفاده خواهد کرد. توجه داشته باشید که اگر gem مناسب ویژه‌پلتفرمی در rubygems.org موجود باشد، پیدا نخواهد شد.
به جای نوشتن روی سیستم فایل، lockfile را در خروجی استاندارد (STDOUT) چاپ می‌کند.
مسیری که lockfile باید در آن نوشته شود.
بازگشت به استفاده از نمایهٔ تک‌فایلی همهٔ gemها.
استفاده از gemfile مشخص‌شده به جای [Gemfile(5)][Gemfile(5)].
افزودن چکسام‌ها به lockfile.
افزودن یک پلتفرم جدید به lockfile، و بازسنجی مجدد برای اضافه کردن آن پلتفرم.
حذف یک پلتفرم از lockfile.
عادی‌سازی پلتفرم‌های lockfile.
در صورت به‌روزرسانی، ترجیح دادن به‌روزرسانی فقط به نسخهٔ patch بعدی.
در صورت به‌روزرسانی، ترجیح دادن به‌روزرسانی فقط به نسخهٔ minor بعدی.
در صورت به‌روزرسانی، ترجیح دادن به‌روزرسانی به نسخهٔ major بعدی (پیش‌فرض).
در صورت به‌روزرسانی، همیشه بالاترین نسخهٔ مجاز بدون توجه به وضعیت پیش‌انتشار (prerelease) انتخاب می‌شود.
در صورت به‌روزرسانی، اجازه ندهید هیچ gemای فراتر از آخرین --patch | --minor | --major به‌روزرسانی شود.
در صورت به‌روزرسانی، استفاده از رفتار به‌روزرسانی محافظه‌کارانهٔ bundle install و جلوگیری از به‌روزرسانی وابستگی‌های مشترک.

اگر bundle lock را با گزینهٔ --update و بدون مشخص کردن فهرستی از gemها اجرا کنید، bundler تمامی gemهای قبلاً نصب‌شده را نادیده می‌گیرد و همهٔ وابستگی‌ها را دوباره بر اساس آخرین نسخهٔ تمامی gemهای موجود در منابع بازسنجی می‌کند.

گاهی اوقات می‌خواهید یک gem تکی را در Gemfile(5) به‌روزرسانی کنید و بقیهٔ gemهای مشخص‌شده را روی نسخه‌های موجود در Gemfile.lock قفل نگه دارید.

برای نمونه، اگر فقط می‌خواهید nokogiri را به‌روزرسانی کنید، bundle lock --update nokogiri را اجرا کنید.

دستور Bundler بستهٔ nokogiri و هر یک از وابستگی‌های آن را به‌روزرسانی می‌کند، اما مابقی gemهای مشخص‌شده را روی نسخه‌های موجود در Gemfile.lock قفل نگه می‌دارد.

اگر می‌خواهید bundle شما از پلتفرم‌هایی غیر از پلتفرمی که به صورت محلی در حال اجرای آن هستید پشتیبانی کند، می‌توانید bundle lock --add-platform PLATFORM را اجرا کنید تا PLATFORM به lockfile اضافه شود، و bundler وادار شود تا وابستگی‌ها را مجدداً بازسنجی کرده و پلتفرم جدید را هنگام انتخاب gemها در نظر بگیرد؛ همهٔ این‌ها بدون نیاز به در دسترس داشتن دستگاهی سازگار با PLATFORM برای نصب gemهای مخصوص آن پلتفرم انجام می‌شود.

برای توضیح کامل دربارهٔ پلتفرم‌های gem، دستور gem help platform را ببینید.

برای جزئیات بیشتر به bundle update(1) bundle-update.1.html مراجعه کنید.

September 2025