13.6 Multiple vendor branches
All the examples so far assume that there is only one
vendor from which you are getting sources. In some
situations you might get sources from a variety of
places. For example, suppose that you are dealing with
a project where many different people and teams are
modifying the software. There are a variety of ways to
handle this, but in some cases you have a bunch of
source trees lying around and what you want to do more
than anything else is just to all put them in CVS so
that you at least have them in one place.
For handling situations in which there may be more than
one vendor, you may specify the `-b' option to
cvs import
. It takes as an argument the vendor
branch to import to. The default is `-b 1.1.1'.
For example, suppose that there are two teams, the red
team and the blue team, that are sending you sources.
You want to import the red team's efforts to branch
1.1.1 and use the vendor tag RED. You want to import
the blue team's efforts to branch 1.1.3 and use the
vendor tag BLUE. So the commands you might use are:
| $ cvs import dir RED RED_1-0
$ cvs import -b 1.1.3 dir BLUE BLUE_1-5
|
Note that if your vendor tag does not match your
`-b' option, CVS will not detect this case! For
example,
| $ cvs import -b 1.1.3 dir RED RED_1-0
|
Be careful; this kind of mismatch is sure to sow
confusion or worse. I can't think of a useful purpose
for the ability to specify a mismatch here, but if you
discover such a use, don't. CVS is likely to make this
an error in some future release.