I'm not sure if there's a CVS solution to your problem.

However, the problem is more a build problem than a source control problem.  You
should look into reorganising your build such that it supports the structure you
wish.  The general solution is to make the shared part a module on its own.  One
would then checkout this module to a spot that can be found by the users of the
module.

Noel




[EMAIL PROTECTED] on 02/23/2000 04:11:31 PM

To:   [EMAIL PROTECTED]
cc:   (bcc: Noel L Yap)
Subject:  Question About Modules





I have a situation where I have a CVS project that contains sharable
components.
I then want to be able to get those sharable components into other projects'
directories
but not under CVS control.  Here is an example:

ShareProject
     Models
          CatFiles


MyProject
     Source
          java
          c
     Models
          CatFiles
     OtherStuff

Now in ShareProject, the Models directory has a model called shareModel.mdl.
The
CatFiles directory has shareCatFile.cat.  In MyProject, there are some other
models
and cat files.  Here, I need a mix from two projects in one directory.
Looking at the
files under the CVS directory, it appears that there can only be one root
and repository
entry so the files in a directory can only be from one project.  (Correct me
if I'm wrong
but please provide an example if you do.)  Therefore, my next thought was to
just export
the stuff from the ShareProject into the MyProject starting at Models.  I
set up an entry
in the Modules file as follows:

SharableRoseModels -d Models ShareProject/Models

and then do an export as follows:

cvs -z9 export -D tomorrow SharableRoseModels

in the MyProject directory.  I get an error message as follows:

cvs export: existing repository /export/home/repository/MyProject/Models
does not match /export/home/repository/ShareProject/Models
cvs export: ignoring module SharableRoseModels

It appears that CVS is seeing the fact that there are /CVS directories and
compares the repository
file.  If I export anywhere else (that doesn't have the CVS directories) it
works fine.  I need to get the
code mixed into the directory from the other project though.  I can do this
pretty easily with at least
three other code management systems that I've used in the past.  I'm sure
that this is because I'm
fairly new at CVS.  I hope somebody has a good answer for this because it is
critical to our use
of CVS.  I've been doing this since the 80's with other systems.

Thanks in advance for any help.

Mike C




Reply via email to