跳到主要内容

如何进行版本控制

· 阅读需 2 分钟
素明诚
Full stack development

语义化版本控制(SemVer)

语义化版本控制(Semantic Versioning,简称 SemVer)提供了一套明确的规则来分配和增加版本号,格式遵循 MAJOR.MINOR.PATCH 的模式,例如 2.5.3,其中

  • MAJOR 引入了不向后兼容的重大变更。
  • MINOR 添加了新功能,但向后兼容。
  • PATCH 进行了向后兼容的缺陷修复。

以微信版本号示例

假设微信当前的版本号为 7.0.0

  • 主版本(MAJOR)更新至 8.0.0
    假如微信推出了一次重大更新,彻底改变了用户界面和用户体验,同时不再支持旧版插件。这样的改变就需要将主版本号提升,因为它导致了向下不兼容。
  • 次版本(MINOR)更新至 7.1.0
    如果微信增加了视频会议等新功能,而这些新增功能不影响旧版本功能的使用,也不破坏现有 API 的兼容性,那么就应当提升次版本号,以标识这是一次功能性的扩展。
  • 修订版本(PATCH)更新至 7.0.1
    针对微信修复了某个特定的 bug,比如修正了消息同步的问题,并且这个修复不影响任何现有功能或 API,那么就适合提升修订版本号,表示这是一次小修小补。

注意事项

  • 一致性 保持版本命名的一致性至关重要。团队应该遵循既定的规则来分配版本号,以确保每个版本号都能准确反映软件的状态。
  • 预发布和构建元数据 在某些情况下,可能需要发布候选版本(如 2.5.3-rc.1)或添加构建元数据(如 2.5.3+20210916)。这些额外的标识符可以提供更多关于版本特性或构建信息的细节,但它们应该在不影响主要版本号排序的前提下使用。

如果您喜欢这篇文章,不妨给它点个赞并收藏,感谢您的支持!