執行環境套件管理器打包器測試執行器程式碼檢查格式化指南參考部落格意見回饋

鎖檔案

Bun 的鎖檔案格式和設定

bun install 建立一個名為 bun.lock 的鎖檔案。

應該提交到 git 嗎?

是的

是否可以生成鎖檔案但不安裝?

要在不安裝到 node_modules 的情況下生成鎖檔案,請使用 --lockfile-only 標誌。Bun 始終會將鎖檔案儲存到磁碟,即使它與專案的 package.json(或多個 package.json)保持最新也不例外。例外情況是設定了 --frozen-lockfile(或 --production)。

terminal
bun install --lockfile-only

bun add、bun remove 和 bun update 也接受 --lockfile-only。

可以選擇不生成鎖檔案嗎?

要安裝相依但不建立鎖檔案:

terminal
bun install --no-save

要在 bun.lock 之外再寫入一個 Yarn 鎖檔案:

terminal
bun install --yarn
bunfig.toml
[install.lockfile]
# 是否在 bun.lock 旁儲存非 Bun 的鎖檔案
# 目前僅支援 "yarn"
print = "yarn"

基於文本的鎖檔案

Bun v1.2 將預設鎖檔案格式更改為基於文本的 bun.lock。要遷移現有的二進位制 bun.lockb,請執行 bun install --save-text-lockfile --frozen-lockfile --lockfile-only,然後刪除 bun.lockb。

有關該格式的更多資訊,請參閱部落格文章。

自動鎖檔案遷移

在沒有 bun.lock 的專案中執行 bun install 時,Bun 會自動遷移現有的鎖檔案:

  • yarn.lock(v1)
  • package-lock.json(npm,lockfileVersion 為 2、3 或 4)
  • pnpm-lock.yaml(pnpm)

Bun 不會遷移來自 npm 6 或更早版本的 package-lock.json(lockfileVersion 為 1);它會列印一條警告,並改為根據 package.json 解析相依。

Bun 會保留原始鎖檔案。驗證後,你可以手動刪除它。