[Top][All Lists]

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

Re: Confusion regarding a new repository

From: Dennis Jones
Subject: Re: Confusion regarding a new repository
Date: Mon, 18 Jun 2007 22:41:52 GMT

"Simon Renshaw" <address@hidden> wrote in message 
> Hi,
> I'm having some problems setting up a new repository. First try ended up
> as a failure.
> First, I created the directory simon under /usr/local. Then I ran cvs -d
> /usr/local/simon init.
> I assume that the next part is where I screwed up. I copied a few
> directories (each containing a bunch of files) under simon. Then I made
> sure the permissions were OK. I could only checkout the directories
> themselves, not the files under them in Eclipse.

Yes, that is where you screwed up.  You were messing with the repository 
*directly* -- something you should never do.

> So I deleted everything and recreated and inited simon.


> I've been looking at the doc (section 3.1.3) and I'm not sure what to do
> next. The files I want to put in CVS are plain, regular files, not
> previous CVS projects. The files I want to put in are in /uni/<folder>.

CVS has no notion of "projects."  Anything you want to go into the 
repository must go through a CVS client.  (well, that's not *strictly* 
true -- but true enough for your purposes)

> Does that mean that if I want to create a project called sources under
> simon, I will need to run cvs import -m /usr/local/simon sources stuff
> start?


> The doc says yoyo but not sure exactly what it does.

"yoyo" is just the name of some example folder (or a module name, I don't 
remember which off the top of my head).

> And then I checkout that project and I add the files to it?

Correct again.  It's kind of a nuisance to have to do a checkout after an 
import, I know, but that's how CVS works.  An import does not create the 
necessary administrative "CVS" folder or its contents; a checkout does. 
Once you have a folder in the repository, you can add sub-folders without 
using the "import" command (just use the 'add' command).  However, all 
top-level folders should be added using "import."

I don't recommend this by any means, but you *could* create a folder in the 
repository directly (like I told you *not to* earlier!), then checkout that 
folder and add/commit files to it using the normal CVS client interface. 
That would avoid the import, but it's not really any better or easier than 
executing an import followed by a checkout -- especially if you have 
multiple folders you want to import.  You can add folders (but not files) to 
the repository directly -- which explains why you were able to checkout your 
folders, but got no files -- and you can do this only because CVS does not 
perform versioning on folders, only files.  Again, I DO NOT recommend you do 
this; it is not the way CVS was meant to work.  You should treat the 
repository as if it were read-only, and accessible only through a CVS 

- Dennis 

reply via email to

[Prev in Thread] Current Thread [Next in Thread]