CVS-MAKE-BRANCH(1)

NAME
cvs-make-branch - make a tagged cvs branch

SYNOPSIS
cvs-make-branch [-anv] branch
cvs-make-branch [-d repository] -m module [-b base_version] [-anv] branch

DESCRIPTION
cvs-make-branch creates a tagged branch named branch in a CVS module.

A branch in CVS has a name which corresponds to the branch itself and can be used to identify the latest version of the files on that branch. There is, however, no cooresponding symbolic name for the version from which the branch was created. cvs-make-branch will therefore tag the module with the symbolic name branch-base and then create the specified branch. This makes it easy to later reference the original version by name.

In the first synopsis form, cvs-make-branch expects the current working directory to contain a CVS working copy and it will create the "-base" tag against the checked-out file revisions. Note that uses the cvs tag command; therefore any locally modified changes do not get tagged as the base version. cvs-make-branch will then create specified branch and update the working copy to it. It should be noted that locally modified (uncommitted) files remain so until committed, and if they are committed after the branch is created, then the commit will happen on the new branch.

In the second synopsis form, cvs-make-branch does not expect a working copy to exist and will create the specified branch in the specified module directly in the repository using the cvs rtag command. cvs-make-branch will then ask the user whether to check out the new branch in module.

The following options are available:

-a  By default, cvs-make-branch will print its parameters and ask the user to verify that a branch should be created with those parameters. The -a option disables this prompt as well as the checkout prompt which is presented if the second synopsis form was used. A yes response is assumed in each case.

-l  Normally, in the first synopsis form, cvs-make-branch creates a branch in the current directory and recursively in all subdirectories. If the -n option is specified, cvs-make-branch will create the specified branch only in the current working directory.

-n  If the -n option is specified, cvs-make-branch will create the specified branch, but will not update to it if the first synopsis form was used and will not check it out (or prompt to check it out) if the second synopsis form was used.

-v  The -v option causes cvs-make-branch to be more verbose, which may aid in debugging problems.

-d repository
    The -d option overrrides the value of the CVSROOT environment variable with repository.

-b base_version
    The -b option allows the user to specify what version of the module to create the branch from. The default is to branch from the main (HEAD) branch.

SEE ALSO
cvs(1), cvs-diff-branch(1), cvs-merge-branch(1)