[cvsnt] How to use ampersand or alias modules and get the top level files?

Bo Berglund Bo.Berglund at system3r.se
Mon Feb 7 16:11:22 GMT 2005


I am now trying to implement a system of modules file definitions of our program sources.

As far as I have understood the workings of the modules file this can be done:

Regular module:
----------------
ModuleReg RepoModule

This will make it possible to check out a module by a different name, RepoModule becomes ModuleReg on checkout.

Alias module:
--------------
ModuleReg -a RepoModule Module1/SubModule

This will make it possible to have a shortcut to checkout several modules not physically related in a single cvs co operation.
All aliased modules will be checked out separately as if the user had given as many cvs co commands as there are modules in the list. The result is that the checked out modules appear in parallel at the folder level where the checkout is done. No umbrella folder is created. So in this example there will be two top level module sandboxes created, RepoModule and Module1.

Ampersand module:
------------------
ModuleReg &RepoModule &Module/SubModule

This will act as the alias module, but it will first create the ModuleReg folder, then check out the modules into that folder, thus collecting the modules under a common top sandbox folder. The full path will be used to the submodules.

My problem now is that I would like to be able to check out the main module contents to the top folder of the sandbox and then get the other modules as subfolders in that folder.
Typically we would have the main project group file here as well as some description of the project.
So far my tests have not shown a possibility to use ampersand or regular modules to do this.

I would like this structure:
Modulename
  |- Project files <== This is my problem right here!
  |- Project source folder
  |    |- Source files and subfolders
  |
  |- Common files folder
  |    |- Common files and subfolders


Any ideas anyone?





More information about the cvsnt mailing list