管理 Node.js 包管理器版本
corepack 根据项目的 packageManager 字段自动切换 npm、pnpm、yarn 的版本,避免“每个人本地版本不同”。部分 Node.js 版本已不再内置,需要单独安装。
corepack enable
corepack prepare pnpm@9.12.0 --activate
corepack prepare yarn@4.5.0 --activate
corepack use pnpm@latest
corepack install -g pnpm@9.12.0
corepack --version
在 package.json 中固定版本:
{
"packageManager": "pnpm@9.12.0+sha512..."
}
packageManager 字段时,corepack 不会改变默认版本。corepack enable 需要写入 Node 安装目录的权限;系统级 Node 可能需要 sudo。which pnpm 确认实际路径。packageManager 的哈希校验失败通常意味着版本或完整性不匹配;不要强行绕过。--frozen-lockfile 才能保证依赖可复现。npm / pnpm / yarn — 被管理的包管理器node — Node.js 运行时