12.多项目管理工具(menorepo,pnpm,npm私有库,submodule)
wabicai
# 12.多项目管理工具(menorepo,pnpm,npm私有库,submodule)
# 常见方案
- Monorepo:多个项目放在同一仓库统一管理。
- pnpm workspace:Monorepo 下的依赖安装与联动工具。
- npm 私有库:把公共能力独立发布,多个仓库按版本消费。
- Git submodule:把另一个仓库作为子模块挂进当前仓库。
# 怎么选
# Monorepo
- 优点:统一规范、跨包联调方便、改动原子性强。
- 缺点:仓库体积大,权限边界不够细。
# npm 私有库
- 优点:边界清晰、版本管理明确、适合稳定公共组件。
- 缺点:联调成本高,发布链路更重。
# submodule
- 优点:仓库独立性强。
- 缺点:使用门槛高,协作体验较差,容易出同步问题。
# 实践建议
- 强耦合团队和共享代码多时,优先 Monorepo + pnpm。
- 公共能力稳定且需要跨团队复用时,适合私有 npm 包。
- submodule 只在必须保留仓库完全独立时再考虑。