Boston Linux & Unix (BLU) Home | Calendar | Mail Lists | List Archives | Desktop SIG | Hardware Hacking SIG
Wiki | Flickr | PicasaWeb | Video | Maps & Directions | Installfests | Keysignings
Linux Cafe | Meeting Notes | Linux Links | Bling | About BLU

BLU Discuss list archive


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Quick question on CVS



On Friday 27 May 2005 3:44 pm, nmeyers at javalinux.net wrote:
> 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.
That's what I plan to do. I have a tarfile with the entire tree. If I do it 
now before I need to start checking out and modifying sources, then I'll 
have a good repository. 

-- 
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




BLU is a member of BostonUserGroups
BLU is a member of BostonUserGroups
We also thank MIT for the use of their facilities.

Valid HTML 4.01! Valid CSS!



Boston Linux & Unix / webmaster@blu.org