yarn
Yarn 1.x (classic) / Yarn 4 (berry)日常 Yarn CLI 命令快速參考(涵蓋 Yarn Classic 1.x 與 Yarn Berry 2/3/4):install/add/remove/run/workspaces、lockfile、Plug'n'Play,以及 Berry 設定——附常用參數與實作範例。
33 條命令
安裝(Classic 1.x)
yarn install安裝 `package.json` 中列出的所有依賴,建立或更新 `node_modules` 與 `yarn.lock`。
--frozen-lockfile 若 lockfile 會改動則失敗(CI 用);--production / --prod 略過 devDeps;--no-progress;--silent
yarn install --frozen-lockfileyarn install --frozen-lockfile僅當 `yarn.lock` 與 `package.json` 完全一致時才安裝。CI 中用來保證可重現的建置。
yarn install --frozen-lockfile安裝(Berry)
yarn installBerry 預設:當 `.yarnrc.yml` 中設定 `nodeLinker: pnp` 時使用 Plug'n'Play,否則退回 `node_modules`。快取於 `.yarn/cache`。
--immutable 當 lockfile 有出入時失敗(Berry 版的 --frozen-lockfile);--inline-builds;--mode=update-lockfile
yarn install --immutableyarn set version <version>切換專案中的 Yarn 執行檔。常見:`yarn set version stable`、`yarn set version 4.0.2`、`yarn set version classic`。
yarn set version stable新增依賴
yarn add <pkg>新增執行階段依賴,並寫入 `package.json` 與 lockfile。Classic 會寫入 `dependencies`,Berry 亦同。
<pkg>@<版本|範圍>;--dev / -D;--exact / -E;--optional / -O;--peer
yarn add lodash && yarn add -D typescript@^5 vitestyarn add -D <pkg>加入 `devDependencies`。
yarn add -D typescript @types/node eslintyarn add <pkg>@<version>安裝特定版本、dist-tag(`@latest`、`@next`、`@canary`),或 git URL。
yarn add [email protected] && yarn add next@latestyarn global add <pkg>全域安裝工具(Classic 1.x)。Berry 對一次性執行檔使用 `yarn dlx`,建議全域工具用 `corepack`。
yarn global add typescript移除
yarn remove <pkg>從 `node_modules` 與對應的 `dependencies`/`devDependencies` 區段移除套件。
yarn remove lodash && yarn remove -D @types/node更新
yarn upgrade在目前 semver 範圍內升級所有依賴;`yarn upgrade --latest` 會跳到最新可用版本並重寫範圍。
--latest;--pattern <glob>;--caret;--exact;-i / --interactive
yarn upgrade && yarn upgrade eslint --latest執行指令稿
yarn run <script>執行 `package.json` 中定義的指令稿。`yarn test`、`yarn start`、`yarn build` 是簡寫。
-- <args> 將參數轉發給指令稿
yarn run build -- --mode productionyarn <script>等同 `yarn run <script>`——直接以名稱呼叫任何已定義的指令稿,免去 `run` 關鍵字。
yarn test && yarn lint:fixyarn dlx <pkg> [args]不本地安裝而直接執行套件的執行檔(Berry 版的 `npx`)。快取於 `~/.yarn/berry/cache`。
-p / --package 選擇套件;-q / --quiet
yarn dlx create-vite my-app --template vueWorkspaces
yarn workspaces add <pkg>把依賴加到 monorepo workspace 的根目錄(1.x)。
yarn workspaces add typescript -Dyarn workspace <ws> add <pkg>把依賴加到 monorepo 內單一具名 workspace。
yarn workspace @myorg/web add react && yarn workspace @myorg/api add -D vitestyarn workspaces run <script>在每個 workspace 中執行指令稿。Berry 的 `yarn workspaces foreach run <script>` 支援並行與拓樸順序。
--parallel;--topological;--continue;--interlaced
yarn workspaces foreach run build --topological --parallel檢視
yarn list印出依賴樹。`--pattern <regex>` 可過濾;`--depth 0` 只顯示直接依賴。
--depth=N;--pattern;--json
yarn list --depth=0 && yarn list --pattern "^react$"yarn why <pkg>說明為何某套件會被安裝——列出帶入它的依賴鏈。
yarn why react && yarn why @types/nodeyarn info <pkg>印出套件的 registry metadata——版本、依賴、dist-tags、README 摘錄。大致等同 `npm view`。
<pkg>@<version>;<pkg> readme;<pkg> dependencies
yarn info react dist-tags && yarn info lodash versionsyarn licenses list列出整個依賴樹中每個授權(SPDX 識別碼 + 作者)。授權合規審查時很有用。
yarn licenses listBerry 設定
yarn config set <key> <value>把設定寫入 `.yarnrc.yml`(Berry)。常見鍵:`nodeLinker`、`npmRegistryServer`、`enableTelemetry`、`yarnPath`。
yarn config set nodeLinker node-modules && yarn config set enableTelemetry falseyarn config get <key>讀取單一設定項。
yarn config get nodeLinker快取
yarn cache clean清除 Yarn 快取(Classic:`~/.yarn-cache`;Berry:`.yarn/cache`)。
yarn cache cleanyarn cache dir印出快取目錄路徑。
yarn cache dirLockfile
yarn import僅 Berry——從 npm 的 `package-lock.json` 匯入成 Yarn 的 lockfile 格式。
yarn importyarn constraints僅 Berry——強制執行以 Prolog 寫在 `constraints.pro` 中的專案級依賴規則(例如每個 workspace 必須使用相同 React 版本)。
yarn constraints稽核
yarn npm auditBerry——代理至 npm registry 的公告來源。回報 lockfile 中的漏洞。
--severity info|low|moderate|high|critical;--json
yarn npm audit --severity high雜項
yarn version印出目前 Yarn 版本(Classic 與 Berry 都適用)。
yarn versionyarn init互動式或 `-y` 接受預設值建立 `package.json`。
-y 接受預設;-p / --private 標記為私有
yarn init -yyarn pack把當前套件打包成 tarball 而不發佈——適合離線發佈。
--filename;--pack-destination <dir>
yarn pack --filename my-pkg.tgzPlug'n'Play(Berry)
yarn unplug <pkg>把單一套件從 PnP zip 儲存區解出到一般的 `node_modules/<pkg>`,使其能以傳統方式 require(用於解決不相容工具)。
yarn unplug react && yarn installyarn rebuild為目前 Node ABI 重新編譯原生 addons。Berry 在 PnP 下處理含原生依賴的套件時需要此指令。
yarn rebuild相關命令速查
volta
日常 Volta CLI 命令快速參考:安裝 Node/npm/Yarn/pnpm 工具鏈、為個別專案鎖定版本、管理全域套件、疑難排解 Volta 本身——附常用參數與實作範例。
25 條命令
Volta 1.x
npm
日常 npm CLI 命令快速參考:init/install/add/remove/update/scripts/run/publish/audit,加上 lockfile、registry、cache 管理——附常用參數與實作範例。
34 條命令
npm 10+
pnpm
pnpm 快速參考:install / add / remove / update、scripts、workspaces、store 與 cache、config——聚焦於 GitHub 站 pnpm 倉庫的工作流,附參數與實作範例。
31 條命令
pnpm 9+
npx
npx 命令快速參考:執行一次性套件執行檔、搭建專案、管理 npx 快取、鎖定版本,以及避免互動式 CLI 的陷阱——附常用參數與實作範例。
25 條命令
npx 10+ (shipped with npm)
vite
Vite CLI 命令快速參考:開發伺服器、build、preview、相依預先打包、plugin 管理、環境變數與專案檢視——附常用參數與實作範例。
30 條命令
Vite 5+
商標與使用聲明
本批命令列工具速查手冊為開源社群參考資料。文中涉及的各工具的名稱、標識、商標(如 Git™、Docker™、Kubernetes®、kubectl、PostgreSQL®、MySQL®、Redis™、MongoDB®、Linux™、PowerShell™、Vim™ 等)均歸對應權利人所有,此處僅為識別與參考之目的使用。
本速查手冊的全部內容均為獨立編寫的簡化自包含參考,**與任何官方文件不存在隸屬、被認可或引用關係**。命令列表、參數說明、範例均為作者原創簡化表達;如需權威資訊,請參閱各工具的官方文件。
命令語法與參數可能在不同工具版本中有所差異。所示版本標籤對應穩定發佈版本;其他版本行為可能有所不同。本速查手冊**不代表**商標權利人的任何偏好或推薦。
如商標或版權方認為本站部分內容存在權益侵害,請發送電郵至[email protected],我們在收到有效權屬證明後,會在合理期限內修改或移除相關內容。
本網站不對因使用本站資訊而產生的任何直接或間接損失承擔法律責任。
關於 Yarn
Yarn 由 Facebook(Meta)於 2016 年 10 月發佈,作為比 npm 更快、更具確定性的替代方案,並有 Google、Exponent、Tilde 共同貢獻。原始的 1.x 線現稱為「Yarn Classic」,處於維護模式;活躍線為「Yarn Berry」(2020 年的 2.0、2021 年的 3.0、2022 年的 4.0,今日為 5.x)。Yarn Berry 內建 `yarn`(單一 4 MB、嵌入 Node 的執行檔)、`yarn dlx`(npx 取代品)、`yarn workspaces`、Plug'n'Play(`yarn install --immutable` 加上 `.pnp.cjs`)——一個有爭議的預設,它不安裝 `node_modules`,而是從單一 zip 儲存區解析套件。Berry 以 `yarnrc.yml`(YAML)設定,與 Classic 的 `yarnrc`(ini)不同。兩個版本可在同一台機器共存:`yarn set version classic` 與 `yarn set version berry` 會切換執行檔。Yarn 安裝速度比 npm 快(並行 + 快取),支援 monorepo 的 `workspaces` 與 `constraints`,並內建 `yarn why`/`yarn licenses` 自省功能。不會向 Meta 傳送任何資料——Yarn 是獨立的 OSS,採 BSD-2-Clause 授權。
速查頁版本 1.0.0