Quick question on CVS
nmeyers at javalinux.net
nmeyers at javalinux.net
Fri May 27 15:44:42 EDT 2005
On Fri, May 27, 2005 at 03:04:57PM -0400, Jerry Feldman wrote:
> On Friday 27 May 2005 2:44 pm, nmeyers at javalinux.net wrote:
> > On Fri, May 27, 2005 at 02:22:15PM -0400, Jerry Feldman wrote:
> > > I currently have a development project where all the sources are in my
> > > home directory at the customer site. Each source directory has a CVS
> > > subdirectory with the appropriate data files (Entries, Repository,
> > > Root, Tag, Template), but I do not have access to the customer's
> > > repository, and they simply want me to set up a local repository in my
> > > home directory. The Root file contains a pointer to the pserver
> > > containing the customer's repository. (My preference would have the
> > > company set up a branch that I could checkin and out so that when we
> > > are complete, the changes would already be on their repositor, but that
> > > is not going to happen).
> > >
> > > In this case, only my userid will be used to access any of the files
> > > (and possibly one other userid which is the company CTO).
> >
> > I'm having trouble finding a question mark. Are you interested in how to
> > do this? "cvs init" to create the repository, followed by "cvs import"
> > can get you there easily.
> Pretty much a pointer on where to proceed. I've got a copy of the O'Reilly
> book and there is an online manual I've used before.
> The main thing I don't want to have to manually touch every file and every
> directory.
OK... "cvs import" is your magic. Now, it's normally used on non-cvs trees
- those without CVS subdirectories. My *guess* is you can use it on your
checked-out CVS tree and it'll just ignore the CVS subdirectories, but
you *might* have to remove those subdirectories - easily done with one
"find" command.
Once you have a CVS repository, you just position yourself at the top of
the tree you want to import and run something like this:
cvs -d /path/to/CVS/repository/root import repos_directory vendor_tag release_tag
This will import the directory you're sitting in into the
"repos_directory" subdirectory of the repository. Everything will be
imported into a branch named "vendor_tag", and be tagged with the version
tag "release_tag". If you do this again later - to bring in newer stuff
from outside - you'd use the same vendor_tag but a different release_tag.
By default, the import process will ignore certain things from your
source tree, sometimes to your annoyance. You can use the -I flag to
change this behavior.
It took me awhile to figure out "cvs import"... you may find you need
to experiment. Go ahead and create a scratch repository somewhere ("cvs
init") and try it; it will not touch the original tree you're importing
from, so don't worry about making mistakes - you can always kill your
repository and start over.
Nathan
> --
> Jerry Feldman <gaf at blu.org>
> Boston Linux and Unix user group
> http://www.blu.org PGP key id:C5061EA9
> PGP Key fingerprint:053C 73EC 3AC1 5C44 3E14 9245 FB00 3ED5 C506 1EA9
> _______________________________________________
> Discuss mailing list
> Discuss at blu.org
> http://olduvai.blu.org/mailman/listinfo/discuss
>
>
More information about the Discuss
mailing list