[cvsnt] Project structure in repository as it relates to branching

Nick Duane nickdu at msn.com
Tue Aug 15 22:07:59 BST 2006


Community technical support mailing list was retired 2010 and replaced with a professional technical support team. For assistance please contact: Pre-sales Technical support via email to sales@march-hare.com.


"Bo Berglund" <bo.berglund at telia.com> wrote in message 
news:pva1e2pc6djo3s6disk994frqthcv7k0cc at 4ax.com...
> On Mon, 14 Aug 2006 11:58:33 -0400, "Nick Duane" <nickdu at msn.com>
> wrote:
>
>>Our project consists of several applications and several static libraries
>>that most of these applications make use of.  Currently when a release is
>>done only the applications which have changes are built and released.  I'm
>>not sure if this is the best approach, as when I started working on 
>>cleaning
>>up the build several applications no longer built because of changes that
>>were made to the shared libraries.
>
> Welcome! THis is one of the reasons to use virtual modules instead!
> We have many applications that we need to maintain all the time. They
> have their own sources but they also use a lot of common code.
> So what we have done is to create a virtual module (using the
> CVSROOT/modules file) for each of tghese applications.
> The sources needed are checked out to subfolders below the application
> main folder using ampersand modules so we get a structure
> approximately like this:
>
> application
>  |- source (main sources for the application)
>  |- common
>  |    |- classxx
>  |    |- classyy
>  |    |- classzz
>  |    |- utils
>  |    |- libs
>  |- bin (where the executable go)
>

Along these same lines, I have a thirdParty module that contains thirdParty 
code (headers & libs from external sources).  My current thinking is that 
I'll put this under each and every top level module as opposed to it being a 
top level module under the repository.  The reason is that if someone 
updates any of these I don't want it to affect all modules.  Each module 
should be able to upgrade to a third party version on their own timetable.

And in order to confidently be able to say I can reproduce any past release 
it seems as if I should also put the development tools and sdk's (VS.NET, 
Platform SDK, etc.) under CVS control also.  Is this what others do?

Thanks,
Nick 




More information about the cvsnt mailing list
Download the latest CVSNT, TortosieCVS, WinCVS etc. for Windows 8 etc.
@CVSNT on Twitter   CVSNT on Facebook