如果改动内容较多,且对数据结构有改动,功能开发时要考虑,上线后如果有问题如何回滚,简单代码回滚后是否还会存在其他问题。
比如普通文本增加富文本功能。
富文本改动文件比较多,直接合并到主分支发布,回滚可能对其他上线的文件有影响;
所以要新建master-fwb分支,其他人开发的功能同步到主分支后,再将主分支的代码同步到富文本分支,发布的分支暂时改成富文本分支;
如果富文本出现了严重的bug,直接将主分支代码重新发布一下;
如果其他功能有问题要回滚,则回滚富文本和主分支;
几天内没有什么其他的问题,再将富文本分支合并到主分支上。
上线顺序
Node合成代码, 移动端代码上线—> 审图编辑器,一键出图编辑器—>图片编辑器—>团队编辑器
回滚顺序
图片编辑器 —>团队编辑器 —> 审图编辑器,一键出图编辑器
富文本代码上线前, 增加富文本数据展示成原来文字功能:
在格式化模板数据文件增加当前是否开启富文本变量openRichText 默认是false
如果meta中v=3和 openRichText=false
遍历富文本数组,将文字放到text中,也删除meta中的v。
富文本代码上线 openRichText变为true
思考
在功能设计时,要考虑该功能是否对数据结构有改动,如果改动内容较多,且对数据结构有改动,功能开发时要考虑,上线后如果有问题如何回滚,简单代码回滚后是否还会存在其他问题。
比如普通文本增加富文本功能。
该功能上线前,先上线如果代码没有富文本功能,但后端返回富文本,对富文本数据处理成普通文本,该功能可以解决上线富文本功能失败,但有些用户使用的富文本编辑了一些数据,该功能将用户改的富文本数据修改为普通文本。
本地代码设置一个富文本开关openRichText,但返回的数据时富文本切开关处于关闭状态时,遍历富文本数组,将富文本变成普通文本结构,文字放到text中,也删除meta中的v。
富文本代码上线 openRichText变为true。