关于大前端的笔记(6)包管理和脚手架
MonoRepo: 单体式仓库,指的是用一个git仓来管理所有源码,与MultiRepo相对,即用多个git仓来管理源码。MonoRepo的最终目标是,把所有相关module都放到一个repo里,每个module独立发布,issue和PR都集中到该repo中。不需要手动维护每个包的依赖关系,发布时自动更新相关包的版本号,并自动发布。

MonoRepo模式下的多包管理工具:Lerna/Yarn Workspace.
脚手架:Scaffold, 在软件开发中,脚手架是伴随业务复杂度提升而来提效的工具,是一个继承项目初始化、调试、构建、测试、部署等流程,能够让使用者专注于编写代码的工具。简单说,一个项目已经搭好架子,只要不断加入相关功能。
前端脚手架:1. 统一团队开发风格,降低新人上手成本;2. 规范项目开发流程,减少重复性工作;3. 提供一键实现项目的创建、配置、开发、插件等,让开发者将更多时间专注于业务。

脚手架的基本功能:
搭建项目(根据用户输入生成配置文件,下载指定项目模板,在目标目录生成新项目),运行项目(本地启动预览,热更新,语法、代码规范检测),部署项目(将代码推送至仓库,前端部署的管理到后台进行发布,以NPM包的方式发布到NPM市场使用时直接安装,清晰和良好格式的日志输出)
