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.