我们一个项目可能存在多个工程,一个项目分前后端工程,后端和前端都可能存在多个工程,所以对于这种情况,目前个人了解下来有2种管理方案:
(1)建立多个git仓库,单独管理每个工程;
- 优点:每个工程由于都独立,所以可以自由选择任意框架开发,互不干涉
- 缺点:工程多了,库多了,管理就繁琐了,这点很影响效率,维护麻烦
(2)通过 lerna + yarn 实现 monorepo 管理;
一个工程中包含所有的package(这里所说的package就是原来分开管理的工程的主要部分),这样一来就只需要建立一个git仓库,把整个项目的所有前后的功能package都能一起管理了,当然这里建议最好把前后的分开为2个仓库,然后前后端单独用 lerna + yarn 实现 monorepo 管理
- 优点:仓库少了,一次性管理所有module,每个module都可以通过learna建立关联关系,这样方便开发私有插件
- 缺点:要遵守相应的规范,其他我暂时还不知道
网友评论