[ ESO ]

ALMA Software Engineering


ALMA SW Engineering

System Snapshot

Reference

Links

 

CVS and BRANCHING

Once you've tagged a software module/subsystem for a release with TAG you must also open a branch on that software, to have the possibility of modifying it and tagging your software-bug fixing.

For this, in case of a bug fixing, before doing anything with the software prepared and tagged for the release you have to issue the commands:

$ cvs co -rTAG <module> (to retrieve the tagged version)
$ cvs tag -b TAG-B <module> (to open the branch on it)

TAG-B being a conventional name for naming the branch.

Then to actually work at the bug-fixing you have to make your working copy the branch, so (after removing previous working copies) you should issue the command:

$ cvs co -rTAG-B <module>
There you can work, make modifications, check in the software. When you are ready, you can tag as agreed with:

$ cvs tag TAG-1 <module>

and notify the concerned parties. Analogously for successive modifications (bug fixing) to the code: you will start from the branch with:

$ cvs co -rTAG-B <module>

...modifications, check in.... and tag when ready:
$ cvs tag TAG-2 <module>

and so on. This way of working wiill let you develop without problems on both the branch and the main trunk. If then you need to merge the modifications done in the branch with the main trunk you can use the  command:

$ cvs update -j

To know more about the merging issue, have a look at
http://www.lodestar2.com/people/dyork/talks/2001/ols/frames/frames.html
and choose the chapter "Branching and Merging".


 [ESO IT Project Web Site]  [IT Project]  [ESO]  [Index]  [Search]  [Help]  [News]