locked
Major, Minor, Build and Revision Definistion?

    Question

  • I am having troubles on what each of these mean.  Mayjor, Minor, Build and Revison mean.

    I found a link to a topic like this, but I totally did not understand it.  Here is the link.
    http://social.msdn.microsoft.com/Forums/en-US/netfxbcl/thread/670af5e9-3ea4-4aa3-93b0-16552edf1120/

    Could someone please give a detailed definition of this, and an example if possible like this guy did for build and revision in that link?

    Also, how to I apply the version details?  I went to the properties of my progect and when to the publish tab, and set it in there, but when I right click on my application, it still always says, 1.0.0.0.  How do I make it so it will say the version that I have it set in the publish tab?  I am not publishing them to the internet, I don't have and FTP or what ever you need, plus I don't think there is a point to publish my programs, they are low level compared to everyone else who programs.

    One more thing.  If I want to make it so the application is done for that version, and is ready to be used on other computers, should I just use the app that is in the debug folder, or should I build it, then use the one that would be in the release folder, or is there something better that I should do?

    Thanks.
    Metroidn1f

    Monday, August 16, 2010 8:59 PM

Answers

  • The version is set under the properties dialog....Application tab...Assembly Information button...assembly version.

    Is is more up to you how those numbers relate to your application, but generally the first is a major revision to incorporate new features, or change a program's fundamental design. Next are incremental changes that do not qualify as a new version. (For example, you might add a new file type to an image editor.) Last is usually internal bug fixes. When a new release is desired after a number of bug fixes, then the second number is incremented and the last one zeroes out. There ought not to be any external distribution of versions that do not have a zero as the last number.

    For example, MyApp version 1.0.0 has 5 bugs to fix. The programmer works on one at a time, and increments the last number for each fix. When the code is checked (internally, it is probably at least version 1.0.5), and ready to ship...it becomes 1.1.0

    • Edited by jinzai Monday, August 16, 2010 9:30 PM typos
    • Marked as answer by Bin-ze Zhao Thursday, August 19, 2010 7:45 AM
    Monday, August 16, 2010 9:28 PM
  • Hi, we do it like this....

    Major is incremented when some major functionality has been added, the meaning of major functionality depends on the project.

    Minor is incremented when some minor functionality has been added, minor functionality depends on the project. Usually means a serious of bug fixes or when existing functionality has been changed.

    Build is the build number token from our CI server. This allows us to know what build was used to create the release. Usually a build involves many components so this lets know what components, what tests, what documentation, what XYZ was used in the release.

    Revision is the revision number taken from source control. This tells us what source code to check out if any problems are found.

     

    Cor is correct this was our definition and it can change depending on project size. For example if the project is small we don't use the build number as the revision number tells us everything we need to know about what was used. Yau can use the version number for whatever you like.

     


    …we each have more potential than we might ever presume to guess.
    • Marked as answer by Bin-ze Zhao Thursday, August 19, 2010 7:45 AM
    Tuesday, August 17, 2010 9:49 AM

All replies

  • The version is set under the properties dialog....Application tab...Assembly Information button...assembly version.

    Is is more up to you how those numbers relate to your application, but generally the first is a major revision to incorporate new features, or change a program's fundamental design. Next are incremental changes that do not qualify as a new version. (For example, you might add a new file type to an image editor.) Last is usually internal bug fixes. When a new release is desired after a number of bug fixes, then the second number is incremented and the last one zeroes out. There ought not to be any external distribution of versions that do not have a zero as the last number.

    For example, MyApp version 1.0.0 has 5 bugs to fix. The programmer works on one at a time, and increments the last number for each fix. When the code is checked (internally, it is probably at least version 1.0.5), and ready to ship...it becomes 1.1.0

    • Edited by jinzai Monday, August 16, 2010 9:30 PM typos
    • Marked as answer by Bin-ze Zhao Thursday, August 19, 2010 7:45 AM
    Monday, August 16, 2010 9:28 PM
  • Thanks, correct me if I am wrong.

    So Mayjor means if something mayjor has been added and makes it run totally different or also if there is a new look?

    Minor means if you add a new filetype, a little change to code to enhance the program?

    Build is the number of builds you have done from the start of the making of your program because of bugs or anything else?

    Revision, I still don't have a clue what that means.  I don't know if you mean in the last part of your reply if you implemted it to mean revision or not.  (Sorry if I did not use implemted the right way.  I am not good at using big words, almost failed my grade 10 english exam)

    Monday, August 16, 2010 9:50 PM
  • Revision should be "Bug fixes" I think.... But as said by jinzai, it is up to you how these numbers work for you...

     

    Regards,

    Matteo

    ByteStorms

    Tuesday, August 17, 2010 8:57 AM
  • I assume that you are the developer of the program (owner)

    You decide what major, minor, build and revision means. 

    There is nowhere a law in which that is globally described.


    Success
    Cor
    Tuesday, August 17, 2010 9:09 AM
  • Hi, we do it like this....

    Major is incremented when some major functionality has been added, the meaning of major functionality depends on the project.

    Minor is incremented when some minor functionality has been added, minor functionality depends on the project. Usually means a serious of bug fixes or when existing functionality has been changed.

    Build is the build number token from our CI server. This allows us to know what build was used to create the release. Usually a build involves many components so this lets know what components, what tests, what documentation, what XYZ was used in the release.

    Revision is the revision number taken from source control. This tells us what source code to check out if any problems are found.

     

    Cor is correct this was our definition and it can change depending on project size. For example if the project is small we don't use the build number as the revision number tells us everything we need to know about what was used. Yau can use the version number for whatever you like.

     


    …we each have more potential than we might ever presume to guess.
    • Marked as answer by Bin-ze Zhao Thursday, August 19, 2010 7:45 AM
    Tuesday, August 17, 2010 9:49 AM
  • As already mentioned, it's up to you to decide what they mean.

    I personally use odd revision numbers for 'released' versions and even for 'internal use only' versions. the Build number is a 2 digit year followed by the day of year; this indicates the exact date it was built. so, today, the build number would be 10229.

     


    Stephen J Whiteley
    Tuesday, August 17, 2010 12:43 PM