脚手架项目地址:github.com/zengdoc/mon…
前言
如果有一个主项目,因需求差异衍生出另外的项目,在没有太细的代码权限管理下,可以考虑使用Monorepo
代码管理模式。
介绍
此脚手架提供支持命令行操作项目,通过指定项目,进行项目的创建
、调试
、更新
,以达到单仓库多项目协同管理的作用。
目录结构
├── bin # 脚手架源代码
├── lib # 脚手架源代码库
├── template # 模板源代码
│ ├── src # 主项目源代码
│ ├── project1 # 项目1源代码
│ ├── project2 # 项目2源代码
功能
创建 create
支持在脚手架
中,以选定的项目为模板,创建一个新项目。主要原理是通过将选定的项目代码和主项目代码文件复制到指定的文件路径,若二者存在冲突,选定项目的代码优先级最高
。
cd monorepo-vue-cli
mvc create project1-demo -p project1
调试 run
支持在脚手架
中,直接对选定的项目进行调试。主要原理通过将选定项目对应的文件路径动态地注入到webpack的alias字段
。
cd monorepo-vue-cli
mvc run serve -p project1
更新 upgrade
支持对项目进行更新。主要原理通过比较脚手架模板对应的项目代码与被更新项目代码里两者的git提交日期,判断是否进行覆盖更新
。
mvc upgrade
原文链接:https://juejin.cn/post/7337489263876325410 作者:doc