I don't think you (as administrator) want to allow users to checkout the cvsroot entirely. The reason I say that is because if you do, then that means every user will have access to the CVS administration files located in $CVSROOT/CVSROOT. That has "bad idea" written all over it.
More than likely what you want to do is edit your modules file. From some working directory:
Code:
$ cvs checkout CVSROOT
$ cd CVSROOT
<edit contents of modules file>
$ cvs commit
$ cd ..
$ cvs release -d CVSROOT
If I understand correctly, what you want in the module file is something like this:
Code:
your_module_name ®ular_module_1 ®ular_module_2 ...
Replace your_module_name with whatever you like; a name to refer to the complete module collection. Then replace each "regular_module_X" reference with whatever names have been given to the chunks of code to check out. So, assuming you wanted to set things up so you could check out "all_modules", and have it snag "display_code", "sound_code", and "network_code", you would get this directory structure on a
cvs checkout all_modules:
Code:
all_modules/
all_modules/display_code
all_modules/display_code/<display_code hierarchy>
all_modules/sound_code
all_modules/sound_code/<sound_code hierarchy>
all_modules/network_code
all_modules/network_code/<network_code hierarchy>
Clear as mud?