开发

版本管理

通过预置与云控部分的介绍,可以知道 extension 包的版本号与宿主 APP 版本号是一一对应的关系,那么良好的版本管理就显得非常重要。通过版本管理,我们可以记录每个版本的历史变化,当出现问题时方便问题回溯及修复。

比如,当前线上存在两个版本的 extension 包,分别是 1.1.0 和 1.0.0,此时发现 1.0.0 版本上存在 bug,那么只需要分别从 1.1.0 和 1.0.0 版本对应的代码分支上进行修复上线即可,若此时未维护多个版本的代码,就只能在最新的代码(即 1.1.0 版本对应的代码)的基础上做修复,那么,如果 1.1.0 中存在一些不能在 1.0.0 所对应的客户端版本上使用的功能,此时就会出现问题。

版本号命名及变更

初次建立 extension 项目时,使用版本号 1.0.0(主版本号.子版本号[.编译版本号[.修正版本号]]),并对应于此版本维护一个独立的代码分支。

版本号增加需遵循以下原则:

  • 当项目在进行了局部修改、 bug 修正或重新编译时,主版本号和子版本号都不变,修正版本号加 1。例如:从 1.0.0 变更为 1.0.1。
  • 当项目在原有的基础上增加了部分功能时,主版本号不变,子版本号加 1,修正版本号复位为 0。例如:从 1.0.1 变更为 1.1.0。
  • 当项目在进行了重大修改或局部修正累积较多,而导致项目整体发生全局变化时,主版本号加 1。例如:从 1.1.0 变更为 2.0.0。