[ghemical-devel] CVS branching news

Tommi Hassinen thassine@messi.uku.fi
Thu, 30 May 2002 10:21:21 +0300 (WET)


Hello all.

Now I have started adding the "preview" version of mine into CVS as I
mentioned last week.

I decided to move the old, or existing, version into a branch and start
adding the new stuff into "trunk", since that seems to be the least
troublesome arrangement in the long run. The name of the "old" branch is
MANY_PROJECTS_BRANCH and you should now update your working copies to this
branch, so that you can keep working with the old code. As a diagram the
situation looks like this:

                       +----------------->  MANY_PROJECTS_BRANCH
                      /
                     /
        ------------+-------------------->   HEAD

So far we have only had one branch, or version, called HEAD internally by
CVS. The old code is moved to the new branch MANY_PROJECTS_BRANCH, and we
are at the crossing now. To keep working with the old code, we must update
our working copies to the MANY_PRJECTS_BRANCH by a command

	cvs update -r MANY_PROJECTS_BRANCH -d -P

You need to do this update only once; later you can use "cvs update -d
-P" as usual. And it's a good idea to make a backup of your tree before
the update, if something goes wrong...

You can use the cvs "status" command to check where you are going. For the
"old" code, you should get after updating to branch something like

$ cvs status BUGLIST
thassine@bioinformatics.org's password: 
===================================================================
File: BUGLIST          	Status: Up-to-date

   Working revision:	1.7
   Repository revision:	1.7	/cvsroot/ghemical/BUGLIST,v
   Sticky Tag:		MANY_PROJECTS_BRANCH (branch: 1.7.4)
   Sticky Date:		(none)
   Sticky Options:	(none)

compared to HEAD branch for new "preview" code:

$ cvs status BUGLIST 
thassine@bioinformatics.org's password: 
===================================================================
File: BUGLIST          	Status: Up-to-date

   Working revision:	1.7
   Repository revision:	1.7	/cvsroot/ghemical/BUGLIST,v
   Sticky Tag:		(none)
   Sticky Date:		(none)
   Sticky Options:	(none)

The branches are parallel versions that do not directly interact each
other; committing files to one branch does not affect another.

If you wish to checkout new working copies, you can use

	cvs checkout -r MANY_PROJECTS_BRANCH ghemical

to get the "old" version and simply

	cvs checkout ghemical

to get the "preview" version.

The branches look the same at the moment, but soon will diverge quite a
lot. If you have any troubles with the branches, please just ask me.

	Tommi