View Single Post
  #2 (permalink)  
Old October 9th, 2007, 09:38 AM
planoie's Avatar
planoie planoie is offline
Friend of Wrox
Points: 16,481, Level: 55
Points: 16,481, Level: 55 Points: 16,481, Level: 55 Points: 16,481, Level: 55
Activity: 0%
Activity: 0% Activity: 0% Activity: 0%
 
Join Date: Aug 2003
Location: Clifton Park, New York, USA.
Posts: 5,407
Thanks: 0
Thanked 16 Times in 16 Posts
Default

This seems to usually be a matter of personal preference.

Typically the major and minor version numbers easy to dictate. You simply need to decide what they are based on the release of your software.

From what I've read Microsoft applies the build number as a date. For example, v2 of the framework is this version:

   2.0.50727

It's major version 2, minor 0, built on 2005 July(07) 27th. Using this method makes it easy to see when a particular assembly was created.

I've yet to find any explanations as to what the revision number represents. I've used CruiseControl.NET to fire off release builds of software. If that case I've set up the build system to set the revision number to the incremental build number that comes from CruiseControl. This provides an association between a given assembly and a particular build that is logged and archived.

Unfortunately there isn't a cut and dried standard for versioning. Like everything else in software, there are lots of ways of doing it, and it's up to the individual or organization to decide what's best. The important thing is to be consistent with all your systems.

-Peter