I'm looking to organise my source code file hierarchy. I'm a C# (.NET) developer and come from an only Windows background (no Linux/Mac). I plan on using Subversion for source control.
This is what I've come up with: (from subversion view)
Root of Subversion Repository
CompanyName /ProjectCodeName 1---/Branches 1---/Tags 2---/InitImport-01-09-2009 // Tag of the initial import of the code. 2---/Release1.0 // Tag of release 1.0 of the trunk. 1---/Trunk 2---/Dev // Checked out by developers (main root). 3---/Deploy // Contains everything to build the product. 4---/Builds // Placeholder for output of Scripts/Setup // -> (always empty in subversion). 4---/Scripts // Contains scripts to build/copy. 4---/Setup // Contains setup scripts/project. 3---/Help // Help documentation of the product (source files). 3---/Resource // Contains images, icons, etc for product. 3---/Source // The main source code. 4---/Shared // Contains code/binary(dll) to be shared. 5---/Libraries // Contains own code to share. 6---/SharedClassLibraryExample 6---/SharedClassLibraryExample.UnitTests 5---/Referances // Contains third-party code (dll's) 4---/WinFormAppExample 4---/ClassLibraryExample 4---/ClassLibraryExample.UnitTests 4---/SubProjectExample 5---/Shared 6---/Libraries 6---/Referances 5---/ClassLibraryModule1Example 5---/ClassLibraryModule1Example.UnitTests 5---/ClassLibraryModule2Example 5---/ClassLibraryModule2Example.UnitTests 3---/Test // Contains test cases for the product. 2---/Docs // Checked out by developers/managers for // design specs, etc.
I am open to any suggestions. Thanks.