Here's a like describing various methodologies we will be using the CvsLikePractice because we are a very small development shop and LOW overhead is what we need. http://mercurial.selenic.com/wiki/WorkingPractices
The main repositories are on feynman under /space/hg/repositories
There is a subdirectory for 3 main code groups:
Under each there will be at least 2 actual repositories and over time more will develop. Understanding the meaning of “major”, “minor” and “patch” wrt our versioning is useful please read: http://feynman.whatiftechnologies.com/dokuwiki/doku.php?id=definition_of_version_numbers_x.y.z.
The repositiories for each code group include:
Each time we release a “minor” version a new minor branch repository will be added to the directory. Each time we release a “patch” version a tag will be added to the minor branch.
Using tool as an example under /space/hg/repositories/tool will be the following repositories:
As a developer you will need your own repository cloned from either the main branch or the minor branch depending on what needs changing.
Code to create a clone
NEED TO FILL IN
You can then make changes and commit them to your local repository as many times as needed until the code is ready for prime time.
Here's how you commit to your local repository
NEED TO FILL IN
Testing should be done on your own repository. When ready your development branch needs to be synchronized and committed to the authority version on feynman. Here's how you commit code to the main repository.
NEED TO FILL IN
TOOL and SAMM have their own accounts on feynman and under these is the dev/src directory structure. The released code should be available there as well as the head of each branch. Code here should NEVER be changed directly. Taking tool as an example:
How to syncronize to the “head” of an authority branch
NEED TO FILL IN
The Changing Code process described above should be used to change code and the dev directories will be updated from the authority repository when we release code or when the “head” of a branch is updated.