【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】
一个软件的开发,总是要不断地进行版本迭代的。一方面,它要将软件发布给客户;另外一方面,它自己还要不断地进行开发。在这方面,kernel的版本管理可以给我们一些提示。
1、开发周期
kernel的发布大体是按照一个星期发布一次进行的
2、正式版本和rc版本
kernel在正式发布之前,会有7-8个rc版本,这个类似于alpha版本、beta版本。
比如4.17发布之前,它会有4.17-rc1、4.17-rc2、......、4.17-rc7等几个版本。
3、正式版本和稳定版本
在正式版本发布前,前一个版本会作为稳定版本继续迭代。
比如4.17发布前,4.16版本就会一直迭代下去,比如4.16.1、4.16.2、4.16.3,......,一直到4.17发布为止。
这中间,4.16不再添加新功能,只修正bug。
如果4.17正式发布,准备开发4.18-rc1,此时4.17就会变成稳定版本,4.16分支就不用继续维护了。
由于4.16的稳定性有保证,这样4.17中的新功能开发也不会有大的影响。
4、稳定版本和长期支持版本
稳定版本不一定是长期支持版本,但是长期支持版本一定是稳定版本。
开发者对那些功能达到功能、设计要求的稳定版本,就会升级为长期支持版本,时间为2-3年左右,每周更新一下,主要是bug维护。
5、长期支持版本到期后如何处置
不再支持更新,不再维护此分支
6、kernel开发对我们的启示
开发软件功能可以分解成若干个功能点,做完一个功能点再做下面一个功能点。
开发每一个功能的时候,按照rc1、rc2、rc3......进行设置。
单个功能开发完毕时,设置代码为static分支,对于新发现的bug及时更新,同时下一个新功能继续按照rc分支来开发。
等到所有功能都开发完毕,那么就可以将最后一个static分支变成lts分支,即长期支持分支。
长期支持分支更多侧重的是bug修正,而不是新功能添加。
7、微软windows支持期限
微软windows新版本一般也只支持10年,前5年支持软件更新、升级、功能添加,后五年支持安全补丁,两者还是有区别的。
对于一般的公司来说,release出去的软件几乎不再支持新功能,还是以安全补丁为主。
某些国内公司甚至安全补丁也没有,release出去就不管不问了。