这与其说是一个技术性的问题,不如说是一个奇怪的问题。在我的公司里,我们有一个MVP,有很多的angularjs组件,但是现在,我们提供MVP给不同的有特殊需求的公司。
以下是现实生活场景中的样子:
公司1
公司2
公司3
我们正在寻找一个适合我们未来商业模式的版本化系统,因为在我们所说的过程中,我们正在为不同的公司使用分支机构,而对于特定的组件特性,我们正在使用其他分支机构。
你可以看到这已经变成了地狱。维护起来非常困难,部署不同版本的应用程序也更加困难。
如果我们能想出解决这个问题的办法,我很乐意与大家分享我的发现。如果是这样的话,我会写一篇博文。
谢谢!
发布于 2016-03-04 05:13:48
您是在寻找过程指导或工具的管理吗?
从工具的角度来看,您可以使用npm,使用他们的私有包服务,或者只是针对某个私有的git。鲍尔也可以这么做。
在Windows中,您可以托管存储库的NuGet,或者也可以为其提供服务。
Git支持子模块和子树,但我个人并不推荐它们。将依赖关系作为实际git历史的一部分是很复杂的。
从流程的角度来看,最重要的事情可能是避免破坏更改。先把精力放在共享组件的设计上,这样,当共享组件发生剧烈变化时,您就不必重新设计共享组件周围的所有东西,因为它的工作方式与第一次构建时的方式不同。
将共享模块视为开源项目。保持良好的文档,干净的代码,并坚持语义版本控制。将版本号应用于稳定的构建(git标记它们,使它们易于检出)。让一个人负责接受组件的更改,这样他们就可以跟踪其他人在使用它做什么,并指导组件的开发。
将它分成一个新的需求包,其中一个项目与其他项目有很大的不同。维护具有太多不同需求的组件可能会成为一场噩梦。
https://stackoverflow.com/questions/35788205
复制相似问题