文章目录

  • 前言
  • 一、关于对项目、产品版本的一些学习探索
    • 问题:大家都是怎么样定义版本号的?(参考资料)
  • 二、我在团队中是这是实践的
    • 团队版本号实践
  • 总结

前言

工作几年了,最近在总结项目、产品版本号命名规范。之前也在网上搜了很多资料,看到大多数的文章都是互相 COPY ,正好最近也有时间,索性自己整理一下自己在工作中的探索与思考,以及我是如何去实践的。通过博文的方式跟大家也做一个分享,希望能够帮助到有需要的朋友。如果您看到我写的有什么不对的地方,或者能够做的更好的地方,也希望大家批评指定,给我一个学习提高的机会。

一、关于对项目、产品版本的一些学习探索

问题:大家都是怎么样定义版本号的?(参考资料)

软件项目、产品版本号大家一般都是这样定义的:

V1.0.0.20211028_base

解读一下这个版本号命名规范:

  • 第一位:版本前缀(V1.0.0.20211028_base)
    V (version)英文版本的缩写
  • 第二位:主版本号(V1.0.0.20211028_base)
    当功能模块有较大的变动,比如增加模块或是整体架构发生变化。此版本号由项目经理决定是否修改。
  • 第三位:副版本号(V1.0.0.20211028_base)
    当功能有一定的增加或变化,比如增加了对权限控制、增加自定义视图等功能。此版本号由项目经理决定是否修改。
  • 第四位:修订版本号(V1.0.0.20211028_base)
    般是 Bug 修复或是一些小的变动,要经常发布修订版,时间间隔不限,修复一个严重的bug即可发布一个修订版。此版本号由项目经理决定是否修改。
  • 第五位:日期版本号(V1.0.0.20211028_base)
    用于记录修改项目的当前日期,每天对项目的修改都需要更改日期版本号。此版本号由开发人员决定是否修改。
  • 第六位:希腊字母版本号(V1.0.0.20211028_base)
    希腊字母版本号共有五种,分别为base、alpha、beta 、RC 、 release
    Base: 此版本表示该软件仅仅是一个假页面链接,通常包括所有的功能和页面布局,但是页面中的功能都没有做完整的实现,只是做为整体网站的一个基础架构。
    Alpha : 软件的初级版本,表示该软件在此阶段以实现软件功能为主,通常只在软件开发者 内部交流,一般而言,该版本软件的Bug较多,需要继续修改,是测试版本。测试人员提交Bug经开发人员修改确认之后,发布到测试网址让测试人员测试,此时可将软件版本标注为alpha版。
    Beta : 该版本相对于Alpha 版已经有了很大的进步,消除了严重错误,但还需要经过多次测试来进一步消除,此版本主要的修改对象是软件的UI。修改的的Bug 经测试人员测试确认后可发布到外网上,此时可将软件版本标注为 beta版。
    RC : 该版本已经相当成熟了,基本上不存在导致错误的Bug,与即将发行的正式版本相差无几。
    Release: 该版本意味“最终版本”,在前面版本的一系列测试版之后,终归会有一个正式的版本,是最终交付用户使用的一个版本。该版本有时也称标准版。

二、我在团队中是这是实践的

产品的版本号的统一,在整个软件研发过程中是比较重要的,贯穿了整个产品的生命周期。
那么涉及到哪些方面呢,我大概给大家列一下:

  • git代码库版本
  • 数据库版本
  • 需求文档版本
  • 需求变更文档版本
  • 设计文档版本
  • 开发文档版本
  • 测试计划版本
  • 操作手册版本
  • 测试用例版本
  • 测试报告版本
  • 版本发布内容
  • 迭代总结版本
  • docker镜像版本
  • pom版本
    等等…………………

团队版本号实践

我们团队在版本号的定义上经过商讨,保留了前五位版本号的定义,去掉了最后的希腊字母版本。
团队的考虑感觉这个希腊字母的定义有点琐碎了,前5位版本号已经足够使用了。为什么说是团队的考虑,而不是项目经理或者产品经理的考虑。要充分尊重团队成员的建议,让每一个人都参与进来,让大家了解我们这么做的意义,这样对于一些规范的实践,是比较好落地的。

V1.0.0.20211028

  • 产品初始阶段时:V0.1.0.20211021
    主版本号0,副版本号1,修订版本号0,日期版本号当前日期
  • 产品每一次迭代:V0.2.0.20211022
    主版本号0,更新副版本号+1,修订版本号归0,日期版本号更新当前日期
  • 产品优化、修复bug:V0.2.1.20211023
    主版本号0,副版本号不变2,修订版本号+1,日期版本号更新当前日期
  • 产品主版本上线时:V1.0.0.20211024
    主版本号1,副版本号归0,修订版本号归0,日期版本号更新当前日期

注意:版本号虽然定义了,还是要团队一起努力去实践落地,让版本号起到作用。必要时需要专人监督版本号的更新情况。

总结

本篇博文分享了产品版本的命名规范,以及我们团队是如何定义的,希望能够帮助到大家。

朋友,看都看到这了,给个关注吧~
如果这篇文章帮助到了您,帮忙点一下关注点一下赞,谢谢大家!
大家的鼓励将是我不断创作的动力!

软件项目、产品版本号的命名规则、定义、命名规范(git代码分支版本、项目产品文档版本)相关推荐

  1. 产品版本、软件版本、文档版本定义

    最近对公司的产品版本.软件版本.文档版本定义进行了细化.供参考. 1.  软件版本 a)        X.Y.Z.build i.             X--软件主版本,与产品主版本对应: ii ...

  2. python文件命名规则-Python命名规则

    使用内容审核Python版本SDK包,需要您配置Python开发环境.从Python官网下载并安装合适的Python版本.兼容Python2.6+以及Python3.x.推荐使用Python3.x版本 ...

  3. java命名规则_Java命名规则

    Java命名规则 定义规范的目的是为了使项目的代码样式统一,使程序有良好的可读性. 命名规则: java源文件的命名 如果有public类,那么源文件名就是public类名,一个文件中只能有一个pub ...

  4. 变量的命名规则和命名规范

    变量的命名规则和命名规范 规则:(必须遵守的,不遵守就是错) 1.一个变量名称可以由数字.字母.下划线.美元符号($) 组成 2.严格区分大小写 3.不能由数字开头,不要使用中文汉字命名 4.不能是保 ...

  5. JAVA里常见的命名规则和命名规范

    目录 1.什么是标识符呢?标识符又可以标识什么呢? 2.命名规则和命名规范的区别 3.Java标识符命名规则​ 4.包名的命名规范 ​ 5.类名的命名规范​ 6.方法名与变量名的命名规范​ 俗话说&q ...

  6. 标识符的命名规则和命名规范

    IdentifierTest.java /*1.在java程序当中,使用editplus工具进行代码编写的时候,有一些单词是蓝色,有的是红色,有的是绿色,有的是黑色,有的是紫色,有的是粉色...... ...

  7. javascript 变量的命名规则和命名规范

    ​ 变量的命名规则和命名规范 - 规则: 必须遵守的,不遵守就是错 一个变量名称可以由 数字.字母(a-zA-Z).英文下划线(_).美元符号($) 组成,如:userrAge, num01, _na ...

  8. Java标识符的命名规则和命名规范

    一.Java标识符的命名规则 1.Java中的标识符只能使用字母大小写.数字0-9.美元符号$.下划线_ 2.Java中的标识符不能使用关键字.保留字.特殊值,例如class.viod.public. ...

  9. 文档加密软件怎么实现对数据文件加密?上海企业办公中使用较多的文档图纸加密软件有哪些?

    随着不断发展的企事业单位,其数据信息安全的保护工作又该何去何处?怎么样来对办公程序生成的批量电子文件进行加密管控? 企业加密需求是不断变化的,会随着应用程序的升级.文件格式的变化.使用范围的变化而变化 ...

最新文章

  1. 今晚8点开播 | 思必驰NLP大牛带你系统学习启发式对话
  2. Tactai获美国科学基金会100万美元投资,致力于打造VR触觉体验
  3. python实现线性回归预测_机器学习实战笔记(Python实现)-08-线性回归
  4. mysql 导入导出sql文件
  5. [算法]浅谈求n范围以内的质数(素数)
  6. c mysql 添加数据类型_MYSQL的常用命令和增删改查语句和数据类型
  7. 仅完成部分的readprocessmemory或write_王者荣耀:三种李小龙获取方式!无需完成任务、28号即可兑换...
  8. 函数指针,函数指针数组,函数返回值为函数指针
  9. Linux批量替换文本,文件夹内所有文本内容
  10. Android学习进阶路线导航线路(Android源码分享)
  11. LINUX SHELL判断两个字串包含关系的办法
  12. 【STC单片机学习】第八课:单片机的LED点阵
  13. 4种网游外挂制作方法
  14. 肝胆疾病的生物化学检验
  15. matlabsvd提取特征值_在MATLAB中使用SVD压缩图像
  16. 【算力网络】算力网络的技术创新——绿色与安全关键技术
  17. 计算机视觉项目-文档扫描OCR识别
  18. 启航——我的第一篇博客
  19. return的作用,返回函数值和结束程序执行
  20. 高防服务器防御的原理是什么

热门文章

  1. C#,数值计算,求解微分方程的吉尔(Gear)四阶方法与源代码
  2. Python调用有道、百度、彩云API实现自然语言翻译
  3. 基于SSM实现企业生资源管理系统-ERP系统
  4. matlab混沌信号 仿真,蔡氏混沌电路的分析和MATLAB仿真
  5. 计算机错误678,宽带连接错误678,教您宽带连接错误678怎么解决
  6. 【原创】【学习笔记5】关于console相关修改
  7. 华硕x450jn拆机_华硕X450C系列笔记本怎么拆机清灰?
  8. 农行k宝输入密码黑屏解决方法
  9. oppo手机html文件管理,oppo手机文件管理里面的文件可不可以删除
  10. hive集群tez引擎执行任务卡住