hudada-cli
Version:
专为程序员准备的本地文档搜索,快捷开发工具
162 lines (123 loc) • 2.7 kB
Markdown
PNPM (Performance NPM) 是一个快速、高效的包管理器,具有以下特点:
- 节省磁盘空间(通过硬链接共享依赖)
- 创建非扁平的 node_modules 目录
- 安装速度快
- 支持 monorepo
```bash
npm install -g pnpm
pnpm --version
```
```bash
mkdir pnpm-demo
cd pnpm-demo
pnpm init
```
```bash
pnpm add [package]
pnpm add -D [package]
pnpm add -g [package]
pnpm add [package]@[version]
```
```bash
pnpm remove [package]
pnpm remove -D [package]
pnpm remove -g [package]
```
```bash
pnpm update
pnpm update [package]
pnpm update -i
```
PNPM 使用内容寻址存储来节省磁盘空间。所有文件都存储在全局 store 中,并通过硬链接在项目间共享。
- 只能访问 package.json 中声明的依赖
- 防止依赖提升导致的问题
```bash
packages:
- 'packages/*'
- 'components/*'
```
让我们创建一个简单的项目来实践 PNPM:
1. 创建项目结构:
```bash
mkdir pnpm-demo
cd pnpm-demo
pnpm init
```
2. 添加一些依赖:
```bash
pnpm add express
pnpm add -D typescript @types/express
```
3. 创建基本的 TypeScript 配置:
```json
{
"compilerOptions": {
"target": "es2018",
"module": "commonjs",
"outDir": "./dist",
"rootDir": "./src",
"strict": true,
"esModuleInterop": true
}
}
```
```bash
pnpm store prune
pnpm install --force
```
```bash
rm -rf node_modules
rm package-lock.json
rm yarn.lock
pnpm install
```
1. 使用 `.npmrc` 配置:
```ini
shamefully-hoist=true
strict-peer-dependencies=false
auto-install-peers=true
```
2. 使用 `pnpm why` 查看依赖关系
3. 定期运行 `pnpm store prune` 清理未使用的包
4. 使用 `pnpm audit` 检查安全问题
1. 创建一个实际的项目
2. 尝试使用 workspace 功能
3. 探索更多高级特性
您想从哪个部分开始实践?我们可以一步步来操作。