${b} is the branch name, and ${m} is the module name

To create a branch:

1. Tag the set of sources you want to branch with a command like:

cvs rtag -r HEAD ${b}-base ${m}

2. Branch them with the command:

cvs rtag -b -r ${b}-base ${b} ${m}

To update the branch to reflect changes in the trunk:

1. Update your working source tree to be on the branch:

cvs update -P -r ${b}

2. Make a tag which represents the new base you're moving to:

cvs rtag -F -r HEAD ${b}-nbase ${m}

3. Merge changes between the old and new base of your branch:

cvs update -j ${b}-base -j ${b}-nbase

4. Merge conflicts, etc.

5. Check in your changes (to the branch).

6. Repoint the base tag at the new base revisions:

cvs rtag -F -r ${b}-nbase ${b}-base ${m}

7. If no regular syncs with HEAD are expected, delete the new base tags:

cvs rtag -d ${b}-nbase ${m}

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License