Question

I've recently started working on my own project, I've added to project to github and I'm learning the reigns with using a source repository.

I have some questions as much of this is new to me:

  1. Version numbers. How do I decide what qualifies as a new version? I work on the project daily and make many small changes. do I write down a changelog? Should I add this with every version? What's Common agreed Practice?

  2. What are the requirements and criteria for an Alpha buuild?

  3. What are the requirements and criteria for a Beta build?

Was it helpful?

Solution

Since you are using git, use the commit history as your change log. Just make sure you are writing short but descriptive messages.

Most of the software I write is uses Major.Minor.Revision for my visioning.

  • Major - Software version. This will only increment if I make a huge change to the code base or rewrite it all.
  • Minor - Release. This changes when I merge changes from the development branch to the master.
  • Revision - Patch number. this will constantly be changing, this is how many times I have pushed to the branch since incrementing the Minor.

An example would be:

1.0.0-dev -> 1.0.1-dev -> 1.0.2-dev -> 1.1.0-rc & 1.1.0-dev

Should I have to make a hot fix I would release 1.1.1-rc and 1.1.1-dev.

As for the requirements for alpha/aeta, you can set your own criteria but normally alpha is usually where you add features to your code and fix the major issues, and beta is where you fine tune your code.

Some good references that go into more detail than I have are:

http://en.wikipedia.org/wiki/Software_release_life_cycle

http://en.wikipedia.org/wiki/Software_versioning

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top