How do you know what version number to use?

前端 未结 12 697
小鲜肉
小鲜肉 2020-12-12 12:01

Here\'s one I have always wondered about...

Please excuse my naivety, but - How do you decide what version number to name your software?

I assume, when someb

12条回答
  •  误落风尘
    2020-12-12 12:21

    I think that the Linux kernel is a good reference for this:

    The version number of the Linux kernel currently consists of four numbers, following a recent change in the long-standing policy of a three-number versioning scheme. For illustration, let it be assumed that the version number is composed thus: A.B.C[.D] (e.g. 2.2.1, 2.4.13 or 2.6.12.3).

    * The A number denotes the kernel version. It is rarely changed, and
    

    only when major changes in the code and the concept of the kernel occur. It has been changed twice in the history of the kernel: In 1994 (version 1.0) and in 1996 (version 2.0).

    * The B number denotes the major revision of the kernel.
          o Prior to the Linux 2.6.x series, even numbers indicate a stable
    

    release, i.e. one that is deemed fit for production use, such as 1.2, 2.4 or 2.6. Odd numbers have historically been development releases, such as 1.1 or 2.5. They were for testing new features and drivers until they became sufficiently stable to be included in a stable release. It was an even/odd version number scheme. o Starting with the Linux 2.6.x series, there is no significance to even or odd numbers, with new feature development going on in the same kernel series. Linus Torvalds has stated that this will be the model for the foreseeable future.

    * The C number indicates the minor revision of the kernel. In the old
    

    three-number versioning scheme, this was changed when security patches, bug fixes, new features or drivers were implemented in the kernel. With the new policy, however, it is only changed when new drivers or features are introduced; minor fixes are handled by the D number.

    * A D number first occurred when a grave error, which required immediate
    

    fixing, was encountered in 2.6.8's NFS code. However, there were not enough other changes to legitimize the release of a new minor revision (which would have been 2.6.9). So, 2.6.8.1 was released, with the only change being the fix of that error. With 2.6.11, this was adopted as the new official versioning policy. Bug-fixes and security patches are now managed by the fourth number, whereas bigger changes are only implemented in minor revision changes (the C number). The D number is also associated with the number of times that the compiler has built the kernel, and thus is called the "build number."

    Also, sometimes after the version there will be some more letters such as 'rc1' or 'mm2'. The 'rc' refers to release candidate and indicates a non-official release. Other letters are usually (but not always) the initials of a person. This indicates a development branch of the kernel by that person. e.g. ck stands for Con Kolivas, ac stands for Alan Cox, whereas mm stood for Andrew Morton. Sometimes, the letters are related to the primary development area of the branch the kernel is built from, for example, wl indicates a wireless networking test build.

    From http://en.wikipedia.org/wiki/Linux_kernel#Version_numbering

提交回复
热议问题