My site /* -Earth is 98% full. Please delete anybody you can.*/
🔒 Locked
Versioning?
Advertisement
Original Post
I am starting to do some serious workin C# and creating a few utilities which I might try to sell. However, I have no clue how I should do versioning on a professional way.
I know that Major.Minor will be used for large overhaul(Or addition of lots of features) and for minor changes(Such as small changes to interface/innerworkings/etc.). However, how would I handle Build.Revision?
VC.NET stores the application versio in Assembly.cs in this format:
Major.Minor.Build.Revision.
What would be a professional way of handlign it?
Toolmaker
My site /* -Earth is 98% full. Please delete anybody you can.*/
My site /* -Earth is 98% full. Please delete anybody you can.*/
there are literally hundreds of ways to go about versioning. where i work, for example, we increment the fourth number until it reaches 9, after which, we then increment the third number to 1 and set the fourth to zero. i am not suggesting that you use this method (in my personal projects, i do not use this method) but it is a workable system.
essentially, it doesn''t really matter how you go about numbering your versions. just be consistent, and don''t do a version for silly minor things, only milestones.
if you are periodically releasing demos to friends or the web or whatever, increment the version prior to the release, so that when you start getting bug reports(did i mention that you should start a bug list?), you know whether or not you''ve already addressed them based on the version.
essentially, it doesn''t really matter how you go about numbering your versions. just be consistent, and don''t do a version for silly minor things, only milestones.
if you are periodically releasing demos to friends or the web or whatever, increment the version prior to the release, so that when you start getting bug reports(did i mention that you should start a bug list?), you know whether or not you''ve already addressed them based on the version.
The practice used at my work is even worse. They increase the minor for milestones(I meant that, couldn''t find the word
) BUT they level it off to .5 or .0 every 6 months. So, in januari they level it off 5.0(Last januari) and in july they level it off at 5.5(It''s 5.2 right now and it won''t increase to .3).
I could use revisions for bug tracking, but that still doens''t make sense about the build number.
And I am looking at an online bug tracker at this moment. I am trying to set up an indie company and sell some software. That''s the main reason I want to streamline things very well.
Toolmaker
My site
/* -Earth is 98% full. Please delete anybody you can.*/
I could use revisions for bug tracking, but that still doens''t make sense about the build number.
And I am looking at an online bug tracker at this moment. I am trying to set up an indie company and sell some software. That''s the main reason I want to streamline things very well.
Toolmaker
My site
/* -Earth is 98% full. Please delete anybody you can.*/
for online bug tracking, I really suggest Bugzilla. It takes a little time to get used to all it''s features, but once you do it''s great. I really suggest heavy use of Bugzilla not only as a bug reporting system but also an inter-team communication system for medium sized projects ("How am I supposed to interface with your subsystem?").
We use 3 numbers: x,y,z
x means the most major thing in the universe (we started at 0.5.0)
The next (y) is the number we increase when we add something really impressive. The last, z, is increased each update, usually incremented with one, but sometime,s if there are a lot of features, we increment it with more than 1.
Right now the version is 0.9.8
Version 1 will be when all the things I originally wanted implemented are implemented.
x means the most major thing in the universe (we started at 0.5.0)
The next (y) is the number we increase when we add something really impressive. The last, z, is increased each update, usually incremented with one, but sometime,s if there are a lot of features, we increment it with more than 1.
Right now the version is 0.9.8
Version 1 will be when all the things I originally wanted implemented are implemented.
I use Mantis for Meldstar stuff simply because it doesn''t take a PhD to manage it unlike Bugzilla (which I certainly prefer over Mantis). But that''s not the topic.
I''d just use Build.Revision for updates of a Major.Minor version. Increment Build for each SP or major bug fix, increment Revision internally or with small bug fixes.
I''d just use Build.Revision for updates of a Major.Minor version. Increment Build for each SP or major bug fix, increment Revision internally or with small bug fixes.
Hmmm, is BugZilla that hard to use? It requires perl, so I might need to install that too on my Windows 2000 server. Coldacid made me doubt, since I have been considering Mantis too. I think I have to weight down, because my server isn''t very powerfull(It''s a p90 running windows 2000, at a reasonable speed).
As for versioning, I think I go for Major.Minor.Revision .
Major = big feats
Minor = small feats
Revision = bugfixes.
As for coding styles, I got that one in my brains and need to document it. I also go for n-tier applications, but that''s design.
Anything else I need to worry about?
Toolmaker
As for versioning, I think I go for Major.Minor.Revision .
Major = big feats
Minor = small feats
Revision = bugfixes.
As for coding styles, I got that one in my brains and need to document it. I also go for n-tier applications, but that''s design.
Anything else I need to worry about?
Toolmaker
quote:
Original post by coldacid
I use Mantis for Meldstar stuff simply because it doesn''t take a PhD to manage it unlike Bugzilla (which I certainly prefer over Mantis). But that''s not the topic.
I''d just use Build.Revision for updates of a Major.Minor version. Increment Build for each SP or major bug fix, increment Revision internally or with small bug fixes.
that''s funny you should say that, because it''s my professor that manages our bugzilla server. hehehe. actually, she makes one of her students run it.
ACM | SIGGRAPH | Generation5
I use Major.Minor.Build So, Every new release, i increment the build by one, and then when theres been quite a few new features / fixes since build 1, i increment the minor version. The Major version is only used if i completely rewrite the software, or do some *major* changes that involve rewriting over half the code.
The system I use is Major.Minor.Revision
After 5 releases of my engine I'm at 0.0.5
When I release 10 more versions of my engine I will be at 0.1.5
100 releases from now I'll be at 1.0.5
James Simmons
MindEngine Development
http://medev.sourceforge.net
[edited by - neurokaotix on May 14, 2004 3:35:17 PM]
After 5 releases of my engine I'm at 0.0.5
When I release 10 more versions of my engine I will be at 0.1.5
100 releases from now I'll be at 1.0.5
James Simmons
MindEngine Development
http://medev.sourceforge.net
[edited by - neurokaotix on May 14, 2004 3:35:17 PM]
Topic Locked
This topic has been locked by a moderator. New replies are not allowed.
Sign in to reply to this topic.
Advertisement