Repository Structure
====================
The new repository still has no projects in it. Let's re-run the
initial import from Note:An Overview of CVS, watching what happens to
the repository. (For simplicity's sake, all commands will assume that
the CVSROOT environment variable has been set to /usr/local/newrepos, so
there's no need to specify the repository with -d on imports and
checkouts.)
floss$ ls /usr/local/newrepos
CVSROOT/
floss$ pwd
/home/jrandom/src/
floss$ ls
myproj/
floss$ cd myproj
floss$ cvs import -m "initial import into CVS" myproj jrandom start
N myproj/README.txt
N myproj/hello.c
cvs import: Importing /usr/local/newrepos/myproj/a-subdir
N myproj/a-subdir/whatever.c
cvs import: Importing /usr/local/newrepos/myproj/a-subdir/subsubdir
N myproj/a-subdir/subsubdir/fish.c
cvs import: Importing /usr/local/newrepos/myproj/b-subdir
N myproj/b-subdir/random.c
No conflicts created by this import
floss$ ls /usr/local/newrepos
CVSROOT/ myproj/
floss$ cd /usr/local/newrepos/myproj
floss$ ls
README.txt,v a-subdir/ b-subdir/ hello.c,v
floss$ cd a-subdir
floss$ ls
subsubdir/ whatever.c,v
floss$ cd ..
floss$
Before the import, the repository contained only its administrative
area, CVSROOT. After the import, a new directory - `myproj' -
appeared. The files and subdirectories inside that new directory look
suspiciously like the project we imported, except that the files have
the suffix `,v'. These are RCS-format version control files (the `,v'
stands for "version"), and they are the backbone of the repository.
Each RCS file stores the revision history of its corresponding file in
the project, including all branches and tags.