Skip to main content
gamedev.net
🔒 Locked

Versioning?

Started by Toolmaker 12 replies 650+ views
Original Post
Toolmaker
Toolmaker
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.*/
 
TANSTAAFL
TANSTAAFL
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.
Get off my lawn!
Toolmaker
Toolmaker
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.*/
 
capn_midnight
capn_midnight
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?").
Toolmaker
Toolmaker
Bugzilla certainly looks interesting. I might install it on my server instead of Mantis, which had my preference. I just test see how bugzilla works.

Anyone other tips I should consider, except the fact that I really should get a SourceSafe.

Toolmaker
 
Raduprv
Raduprv
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.
coldacid
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.
Toolmaker
Toolmaker
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
 
capn_midnight
capn_midnight
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.



capn_midnight | Captain Midnight | deviantArt
ACM | SIGGRAPH | Generation5
Toolmaker
Toolmaker
Nothing else?
 
coldacid
coldacid
It''s more a bitch to install Bugzilla than admin it, but it''s still a pain in the ass and not something you want to do when you don''t have physical access to the machine running it. Also, installing Bz on Windows is quite painful.
alnite
alnite
v 5.1865.79807.4576b

Seriously, I have no idea why some programs have version numbers so long.

I prefer 3-digit system: 1.00, 1.01, 1.02, 1.03.
Evil Steve
Evil Steve
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.

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.