pnpm替代npmyarn,pnpm安装与使用教程
AI-摘要
米波GPT
AI初始化中...
介绍自己 🙈
生成本文简介 👋
推荐相关文章 📖
前往主页 🏠
前往爱发电购买
pnpm替代npmyarn,pnpm安装与使用教程
秋夜袭雨最近用yarn老出现问题,了解并体验了一下pnpm,确实不错。以下是学习记录。
pnpm的优点
- 快速: pnpm 比替代方案快 2 倍
- 高效: Node_modules 中的文件是从一个单一的可内容寻址的存储中链接过来的
- 支持: monorepospnpm 内置支持了单仓多包
- 严格: pnpm 创建了一个非平铺的 node_modules,因此代码无法访问任意包
pnpm安装与更新
1 | npm i -g pnpm |
Pnpm命令
查看版本
1 | pnpm -v |
初始化新项目
1 | pnpm init 项目名 |
添加依赖包
会自动安装最新版本,会覆盖指定版本号
[package]为包的名字,例如安装vite,就是
pnpm add vite
1 | pnpm add [package] |
一次性添加多个包
1 | pnpm add [package] [package] [package] |
添加指定版本的包
[version]为版本号,例如安装vite的4.0.0版本
pnpm add vite@4.0.0
1 | pnpm add [package]@[version] |
安装某个tag(比如beta,next或者latest)
1 | pnpm add [package]@[tag] |
将依赖项添加到不同依赖项类别
不指定依赖类型默认安装到dependencies里,你也可以指定依赖类型分别添加到 devDependencies、peerDependencies 和 optionalDependencies
1 | pnpm add [package] --dev 或 yarn add [package] -D // 加到 devDependencies |
升级依赖包
1 | pnpm up //更新所有依赖项 |
移除依赖包
1 | pnpm remove [package] // 移除包 |
安装package.json里的包依赖,并将包及它的所有依赖项保存进yarn.lock
安装所有依赖
1 | pnpm 或 pnpm i |
安装一个包的单一版本
1 | pnpm i --flat |
强制重新下载所有包
1 | pnpm i --force |
只安装生产环境依赖
1 | pnpm i --production |
发布包
1 | pnpm publish |
运行脚本
1 | pnpm run |
显示某个包的信息
1 | pnpm info [package] |
缓存(无效,不建议删除,确实需要删除可以找到存储路径,整个目录删除)
1 | pnpm cache |
设置存储路径,将替换成你要存放的仓库目录,如:/e/文档/.pnpm-store
1 | pnpm config set store-dir <global-store-path> |
pnpm设置源
查看源
1 | pnpm config get registry |
切换淘宝源
1 | pnpm config set registry https://registry.npmmirror.com |
临时修改
1 | pnpm --registry https://registry.npmmirror.com install any-touch |
还原
1 | pnpm config set registry https://registry.npmjs.org |
评论
匿名评论隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果