我刚刚开始使用通过Linux RPM机制提供的产品,而不是作为独立的安装程序,并意识到这会使测试/发布周期变得更加棘手。
当我使用安装程序时,我们只需更改构建系统中的构建编号,以将构建标记为测试或发布候选而不是开发快照,并告诉人们仅安装候选构建以进行测试。使用RPM进行此操作的问题在于,如果我们更改编号系统,我们将破坏传送机制,并且已安装的机器将无法再分辨哪个是最新版本的RPM。
我想到的解决这个问题的最好方法是将候选RPM放在一个完全独立的RPM存储库中,但这也很复杂,因为我们有多个来自不同发布周期的同一存储库的RPM,因此,我们将尝试从新存储库中提取RPM A的候选版本,同时仍希望从开发存储库获取RPM B的开发快照。
对于Linux软件来说,这一定是一个非常常见的问题,所以有人能告诉我最佳做法吗?在此先感谢.....
答案 0 :(得分:3)
Linux世界中的一种常见方法是使用广泛公布的版本号约定来指示构建是开发还是发布。对于Linux内核本身,奇数点发布(2.5,2.7)是开发,而偶数(2.4,2.6)是发布。
快速扫描RPM guide似乎表明使用这样的方案可能是最好的选择。