[cvsnt] Re: Another modules question

Oliver Giesen ogware at gmx.net
Wed Jan 26 01:20:29 GMT 2005


Bo Berglund wrote:

> Assume that there is this in the modules file:
> 
> MyFiles -d Src/MyFiles PRJ/Myself/MyModule myfile.c myotherfile.c
> MySources -d Src PRJ/Myself/MyProject/Source
> MyProject &MySources &MyFiles
> 
> When I check out this I assume I will get a folder:
> MyProject/Src/MyFiles
> in which I will find the files myfile.c and myotherfile.c but no other
> files from the PRJ/Myself/MyModule physical module
> 
> What will happen if I now cvs add a file to this folder?

The file will get added to PRJ/Myself/MyModule


> Will it disappear from the folder on the next update because it is not
> listed in the module definition?

No, Update is not "modules-aware". Unfortunately after the checkout
there is no information left on the client about which module
definition was used to fetch a specific file or folder. You could
however use Checkout instead of Update to perform a modules-aware
sandbox update. You would have to know the name of the module
obviously. I'm not sure whether this would remove the file though. My
guess is that it still won't.


> Or if it stays, what will happen if someone else now checks out the
> module MyProject? Will he get the extra file or not?

No, he will not get it as it is not included in the definition of
MyFiles in the modules file. This always has to be done manually.


> And what will happen if I do a cvs update on the top of the module and
> specify the "create missing directories that exist in the repository"
> option? Will this destroy the carefully designed module sandbox?

Yep. Utterly.

That's why the WinCvs team has resisted to make that option a
persistent one to this very day...

Improvements have been made to the Checkout dialog's logic however
which should make substituting Update with Checkout much easier, i.e.
WinCvs will remember for you which CVSROOT and which module was last
used to checkout to a given directory and present these as
context-sensitive defaults. This often works so well you almost want to
have an option to skip the Checkout dialog... ;)

Hope this helps.

-- 
Oliver
----  ------------------
JID:  ogiesen at jabber.org
ICQ:  18777742     (http://wwp.icq.com/18777742)



More information about the cvsnt mailing list