linux kernel 发布规则
摘自 Linux Kernel in a nutshell
In the past, the Linux kernel was split into only two trees, the “development”
branch and the “stable” branch. The development branch was denoted by an odd
number for the second release number, while the stable branch used even
numbers. So, as an example, the 2.5.25 release was a development kernel, while
the 2.4.25 release is a stable release.
But after the 2.6 series was created, the kernel developers decided to abandon this
method of having two separate trees, and declared that all 2.6 kernel releases
would be considered “stable,” no matter how quickly development was
happening. The few months between the major 2.6 releases would allow kernel
developers the time to add new features and then stabilize them in time for the
next release. Combined with this, a “-stable” kernel branch has been created that
releases bug fixes and security updates for the past kernel release, before the next
major 2.6 release happens.
This is all best explained with some examples, illustrated in Figure 3-1. The kernel team released the 2.6.17 kernel as a stable release. Then the developers started working on new features and started releasing the -rc versions as development kernels so that people could help test and debug the changes. After everyone agreed that the development release was stable enough, it was released as the 2.6.18 kernel. This whole cycle usually takes about two to three months, depending on a variety of factors.
While the development ofthe new features was happening, the 2.6.17.1, 2.6.17.2, and other stable kernel versions were released, containing bug fixes and security updates.