📦 依赖管理实战

📚 30章 完整体系 · 从入门到未来
1
依赖管理概述
什么是依赖管理 · 为什么需要 · 演进历史 (手动下载→npm/yarn/pnpm)
2
npm核心概念
package.json详解 · SemVer · dependencies vs devDependencies
3
npm基础操作
npm init / install / uninstall / update
4
npm进阶技巧
npm ci · package-lock.json · audit · outdated
5
npm脚本与钩子
scripts配置 · pre/post钩子 · 自定义自动化构建
6
npm私有仓库
搭建私有仓库 · verdaccio · 发布与使用私有包
7
yarn入门
设计理念 · 与npm对比 · 安装与基本使用
8
yarn核心特性
yarn.lock · 离线缓存 · workspaces工作空间
9
yarn进阶
yarn berry (v2+) · Plug'n'Play · 约束与策略
10
pnpm入门
设计哲学 · 硬链接与符号链接 · 安装与基本使用
11
pnpm核心优势
磁盘空间节省 · 安装速度提升 · 严格依赖隔离
12
pnpm进阶
workspace配置 · filter过滤 · store管理
13
依赖版本管理
SemVer深入 · 版本范围与锁定 · ^ 与 ~ 区别
14
依赖冲突与解决
依赖树 · 嵌套依赖 · 扁平化策略 · 严格隔离方案
15
lock文件深度解析
package-lock / yarn.lock / pnpm-lock · 冲突解决
16
monorepo架构
什么是monorepo · vs multirepo · 优缺点
17
Lerna入门
Lerna是什么 · 基本配置 · publish & bootstrap
18
Lerna进阶
与yarn/pnpm workspaces集成 · 版本管理策略
19
Nx入门
Nx是什么 · workspace/projects/targets · 安装初始化
20
Nx进阶
依赖图分析 · 缓存与计算缓存 · affected增量构建
21
Turborepo入门
设计理念 · 安装配置 · pipeline机制
22
Turborepo进阶
远程缓存 · 与pnpm集成 · 并行执行策略
23
依赖安全
npm/yarn audit · Snyk · 漏洞修复策略
24
依赖更新策略
手动 vs 自动 · Renovate/Dependabot · 最佳实践
25
包发布与管理
npm publish · 版本号 · tag/dist-tag · 弃用与撤销
26
CI/CD中的依赖管理
GitHub Actions · 缓存策略 · lock文件处理
27
依赖管理最佳实践
锁定版本 · 定期更新 · 最小化依赖 · 精确版本
28
常见问题排查
安装失败 · 权限 · 网络 · 缓存清理
29
依赖管理工具选型
npm vs yarn vs pnpm · 场景建议 · 团队协作
30
未来趋势
ESM/CJS · import maps · Deno/Bun · 依赖管理未来