关于同个项目多个版本的一些思考

33 阅读2分钟

经常会有一些产品是同一个项目但是又多个版本的需求,比如一个app有智能版,有标准版,vip版,xxx客户版,yyy客户版

目前解决方案: 不同的版本不同的分支,基于基础版,不同的版本开发不同的功能 问题: 1、如果基础版有bug,或者是新增一个公共的新需求,那么每个分支都要去改,简单的能合并稍微复杂的就合不动

我就在想有没有更好的解决方案,结合之前用过的低代码,感觉配置式的低代码那种解决方案是不是更好一点,我们开发功能实际是开发组件,每个组件开发好了提交到物料平台,每个版本,去物料库里面去使用自己需要的版本的物料,如果有变更或者有新需求就去改对应的物料就好了

举例1: 开发一个公共的功能:xx列表 1、新建xx列表组件,完成后上传到物料平台 2、在各个版本中去使用它,可带版本,也可不带,不带版本就是最新的(微前端,远程组件等,具体如何做都可以单独写一篇文章了,这里就单纯讨论这种解决方法有问题没) 3、如果有bug,修改xx列表组件重新上传到物料平台,版本+1,各个版本如果是请求的最新的组件,自然就都修改了bug

举例2: 开发一个差异功能:yy列表 1、新建yy列表组件,完成后上传物料平台为yy列表(基础组件) 2、要么在组件里用逻辑判断,要么还是新开分支,反正开发好一个yy列表(vip版),上传物料 3、在vip版app去使用它 4、有bug了,修改完重新上传更新yy列表(vip版),然后vip版本的bug就被修复了,其他版本也不会受影响

感觉就是更颗粒化了,该有差异的就差异,该一样的就是一样的,抛出这个话题看下我这个思考是不合理,或者有什么更好的办法