2.9 KiB
Executable File
2.9 KiB
Executable File
3-npm yarn pnpm
CLI 命令比较
作用 | npm | yarn | pnpm |
---|---|---|---|
安装 | npm install | yarn install | pnpm install |
安装的简写 | npm i | yarn add | pnpm add |
强制安装 | npm i xxx --force | yarn add xxx --force | pnpm add --force |
卸载 | npm unintall | yarn remove | pnpm remove |
卸载简写 | npm rm | yarn rm | pnpm rm |
全局安装 | npm i xxx --global/-g | yarn global add xxx | pnpm add -g xxx |
安装包(生产模式) | npm i xxx --save/-S | yarn add xxx | pnpm add xxx |
开发模式安装包 | npm i xxx --save-dev/-D | yarn add xxx -dev/-D | pnpm add -D xxx |
检查更新 | npm outdated | yarn outdated | pnpm outdated |
更新 | npm update | yarn upgrade | pnpm update |
全局更新 | npm update -g | yarn global upgrade | pnpm update -g |
运行 | npm run xxx | yarn run xxx | pnpm run xxx |
清除缓存 | npm cache clean | yarn cache clean | pnpm store path |
动态包执行 | npx xxx | yarn dlx xxx | pnpm dlx xxx |
查看全局安装的包 | npm list -g --depth 0 | yarn global list | pnpm list -g |
切换镜像源
npm install -g nnrm
nnrm ls
nnrm use xxx
pnpm 删除缓存
# 每块硬盘每个分区上都有缓存
# 例如D盘的项目会在D盘建立缓存
# 删除不被硬链接的包
pnpm store prune
# 强制删除所有pnpm缓存
pnpm store path
rm -rf ~/.pnpm-store
macos npm install -g 权限问题
# permission denied
使用n/nvm等管理器重新安装node, 且提前设置好安装的路径, 安装在不需要权限的路径, 例如 $HOME/.n/ 下
快速清理电脑上的 node_modules
npm i -g npkill
// 进入对应目录
npkill
配置文件指定镜像源
# 项目根目录
vim .npmrc
# 淘宝源
registry=https://registry.npmmirror.com/
lock文件
"vue": "3.0.11" 只装这个版本, 精确到补丁版本号
"vue": "~3.0.11" 可以装 3.0.* 的最新版本
"vue": "^3.0.11" 可以装 3.* 的最新版本
减少依赖
pnpm dedupe
pnpm原本会分别安装B1和B2,dedupe命令执行后,会检测到这是同一个包,然后安装一个兼容B1和B2的B版本,A和C都依赖这个B版本。
这样可以减少重复安装,节省磁盘空间。
此外,dedupe还可以删除不再被使用的依赖,进一步优化依赖树。
所以pnpm dedupe是一个很有用的命令,可以有效优化pnpm安装的模块大小,减少不必要的重复依赖。