What's your versioning scheme?

I always wondered how other people version their .NET assemblies.  What seems to be obvious at first (Major.Minor.Build.Revision) becomes harder as you have to deliver support and patches once a product has been installed at a customer's site and meanwhile development for the next version (be it a minor one) is well on it's way.  How do I create a patch (read bugfix) for the version that my customer has? This is a problem - and correct me if I'm wrong - I don't see in opensource projects as one can easily download the code, adapt it, use it at the customer's site and post a request to include the fix or feature in a future version.  Meanwhile has anybody thought about that little interim build's version number?  Back to my product: I can't just increase the build number for the patch as it will conflict with the builds of the next version.  We redefined the version scheme of our assemblies to be Major.Minor.Patch.Build.  How does this solve our build number collision problem?  It doesn't.  Instead, when making a Patch, we increase the patch number and the build number, but the buildnumber still collides with the build number of the next version.  But at least we can make out the difference between a Patch on an earlier version and the build of a newer version, by means of the Patch number.  Why didn't we go for the minor number instead of the patch number and versioning scheme alteration?  Because the next version maybe a minor one.

Published 20 February 2003 10:25 PM by yreynhout
Filed under:

Comments

No Comments

Leave a Comment

(required) 
(required) 
(optional)
(required)