在官方contributing文档介绍开发环境配置处,介绍了Vue3开发使用的工具,与前一版本比新引入了lerna组织管理模块。本篇主要分享一下lerna相关的概念,及使用场景。前端
lerna是什么
官方解释 Lerna is a tool that optimizes the workflow around managing multi-package repositories with git and npm. lerna是一个围绕多package仓库npm模块优化工做流程的管理工具git
使用场景
当前端项目开发过程当中,若是存在按业务划分的多个项目,且项目之间互有依赖或者有大量的公共库或者模块时。可考虑使用lerna进行优化改造,改造后的目录结构大体以下。这样组织的一个极大的优点 公共模块的库或者lib修改完毕后可之间在业务模块引用到相关修改,无需发布lib到npm私服或者公共仓库。github
优缺点
主要缺点就是全部的代码都集中在一个仓库,致使库内容过大。若是项目过大在第一次clone代码时速度较慢,不过在集成构建部署均时能够经过脚本配置成增量发布的方式,尽可能下降对发布速度的影响。npm
教程
各技术社区和论坛都有大量优质的中文教程,为了了解更多细节此处推荐官方文档教程固然不是全部的项目都须要使用lerna之类的管理工具。不过做为技术人员有必要尽可能多了解一些大神们使用的工具,解决方案等。当随着业务发展或者其余缘由致使面临技术重构时,这些积累和储备在必定程度上能够开拓思路有备无患。工具
lerna monorepo management优化
以上问题,平时在工做中有了解或者有最佳实践的同窗也能够不吝分享一块儿提升
3d