如何管理共享90%代码的多个应用程序?

时间:2018-06-03 09:26:30

标签: angular

我们有多个产品,但大部分代码库都是共享的(> 90%)。 我们正在努力弄清楚如何管理Angular前端。

应用程序的许多部分存在差异,有时非常小(例如某些组件的文本更改)。 目前,我们为每个产品都有一个git分支,核心有一个分支,但它看起来不是一个完美的解决方案。

关于这个主题还有一个更普遍的问题:multi-product architecture, with large common part但是没有答案。

你能提出我们应该遵循的任何良好做法吗?

2 个答案:

答案 0 :(得分:0)

如果您使用的是Angular客户端,则可以使用

ng generate application <site1> 
ng generate application <site2> 
ng generate application <common> 

然后您可以将所有通用代码/组件/服务等...放置在公共站点中。

然后使用--project命令行选项创建您的东西

ng g services servies/user --project common
ng serve site1
ng serve site2

如果您想看的话,我很快在github上创建了一个演示仓库。

angular-multiple-projects-demo

答案 1 :(得分:0)

对此没有一个好的答案,它将在很大程度上取决于您的开发状况和您的业务需求。两种想法:

1)我认为您可以构建小型功能包,并通过npm为其提供服务。那可能是很多工作。 2)以您描述的方式使用git似乎不太理想。