项目管理的方式是多种形势的,依据管理的方式类进行项目建仓。工具
mono或者mult其实都是项目管理的方式,只是两种方式是恰好相反的,拿来一块儿说是,更方便记忆而已。学习
multrepo:将项目分化成为多个模块,并针对每个模块单独的开辟一个reporsitory来进行管理。测试
优势:1.团队本身的IDE,语言,以及工做步调。ui
2.模块更小,更易维护。spa
3.开发效率更高。版本控制
缺点:1.合并困难,每一个模块规范不一样,同步和编译时这些问题将会集体爆发。项目管理
2.难以保证稳定性。开发
3.因为可能存在不一样语言开发,或者不一样IDE的状况,新建或者更新构建变得困难get
monorepo:是将全部的模块统一的放在一个主干分支之中管理。不进行分库存储,当有特定的须要的时候进行分支,可是问题修改仍是在主干上操做,并有专门人员合并到分支内容上,在特定需求完结的时候,分支也将会被废弃。点击这里,查看详细介绍:同步
优势:1.统一的规范,语言,和IDE带来的是结构的完整稳定。
2.按照统一的标准进行开发,是哦程序稳定性更良好,更易解读。
3.标准化的开发流程,规避不少没必要要的冲突与错误。
缺点:1.项目过大,难以管理。
2.因为统一的标准,不一样的团队可能须要对于新的规范和IDE进行了解学习,须要时间。
3.修改和开发可能变得繁琐,减慢效率。
若是大家团队选择 monorepo,那主要的挑战天然是随着项目的发展,其会变得很是庞大(由于没有根据模块或功能拆分红不一样 repo)。所以会须要不少的工具来应对这样的挑战。