查看全局安装地址
npm config get prefix
显示全局安装的所有npm包及其路径
npm list -g --depth=0
查看全局pnpm包的当前版本
pnpm -v
全局安装pnpm到最新版本
npm update -g pnpm
pnpm包管理器的优点
- 使用 pnpm,依赖包将被 存放在一个统一的位置
- 对同一依赖包需要使用不同的版本,则仅有 版本之间不同的文件会被存储起来。
- 所有文件都保存在硬盘上的统一的位置。
下载
npm install -g pnpm // nodeJS下安装
npm install -g @pnpm/exe // 没有nodeJS下安装
添加依赖 pnpm add
pnpm add <pkg> // 保存到dependencies配置下,生产环境下所需的依赖项
or
pnpm add --save-prod <pkg>
pnpm add -D <pkg> // 保存到devDependencies配置下,开发环境下所需的依赖项
or
pnpm add --save-dev <pkg>
pnpm add -o <pkg> // 保存到optionalDependencies配置下,不影响项目运行,可有可无
or
pnpm add --save-optional <pkg>
pnpm add -g <pkg> // 安装软件包到全局环境中
or
pnpm add --global <pkg>
pnpm add <pkg>@next // 安装标记为next的版本
pnpm add <pkg>@3.0.0 //安装指定版本3.0.0
安装 pnpm install
别名:i
pnpm install --force // 强制安装锁定的项目依赖包,重新创建依赖目录和配置
pnpm install -P // 生产环境下,忽略安装其中的任何包,并删除其中已经安装的包
or
pnpm install --prod
pnpm install -D // 已经安装的情况下,才会安装或删除
or
pnpm install --dev
pnpm install --no-optional // optionalDependencies没有安装
更新 pnpm update
别名:up,upgrade
pnpm up // 更新package.json的所有依赖
pnpm up --latest // 更新package.json的所有依赖,忽略package.json的忽略范围
pnpm up foo@2 //更新foo到v2以上的最新版
pnpm up -r //并发地更新所有package.json子目录下的包,不包括node_moudules
or
pnpm up --recursive
pnpm up -L // 忽略版本范围,使用最新标记指定的版本
or
pnpm up --latest
pnpm up -g // 更新全局包
or
pnpm up --global
pnpm up -P // 仅更新dependencies和optionalDependencies的包
or
pnpm up --prod
pnpm up -D // 仅更新devDependencies的包
or
pnpm up --dev
pnpm up --no-optional //不更新optionalDependencies的包
pnpm up -i //显示过时依赖并选择更新依赖项
or
pnpm up --interactive
pnpm remove
别名:rm,uninstall,un
pnpm remove命令则是用来删除指定的软件包。
node_modules目录下和package.json文件中删除
pnpm remove -r // 删除每个workpack或子目录下的指定依赖包
or
pnpm remove --recursive
pnpm remove -g // 全局环境中删除指定依赖包
or
pnpm remove --global
pnpm remove -D // 删除devDependencies下的依赖包
or
pnpm remove --save-dev
pnpm remove -O // 删除optionalDependencies下的依赖包
or
pnpm remove --save-optional
pnpm remove -P // 删除dependencies下的依赖包
or
pnpm remove --save-prod
重构 pnpm rebuild
别名:rb
pnpm rebuild -r // 单体仓库中的每个软件包执行重构
or
pnpm rebuild --recursive
pnpm import
pnpm import 命令用于通过其他软件包管理器的 lockfile 文件生成 pnpm-lock.yaml
支持的源文件:
package-lock.jsonnpm-shrinkwrap.jsonyarn.lock
删除 pnpm prune
pnpm prune命令用于删除不需要的软件包。这个命令会根据参数来删除特定类型的依赖包。
pnpm prune --prod // 删除devDependencies下的包
pnpm prune --no-optional // 删除optionalDependencies下的包