Friday, July 16, 2010

Subversion folder structure

One problem I faced is how to organize the svn folder structure, so that it accounts for documentation which is not part of any baseline.
I have solved it as follows:
> Project 1
> Trunk
> Branches
> Tags
> Archive

If you expand this structure, you will find something like this:

> Project 1
> Trunc
> Management & Analysis
> Design
> Testing
> Code
> Branches
> 4.2
> 4.3
> 5.0
> Management & Analysis
> Design
> Testing
> Code
> Tags
> 4.2.0
> 4.2.1
> 4.2.2
> 4.3.0
> 5.0.0
> 5.0.1
> Management & Analysis
> Design
> Testing
> Code
> Archive
> Meetings
> Reports

As you can see, what goes in the Trunc folder is only fully configured items (which are part of the baseline). Whatever else is stored in the Archive folder, which is one folder for the whole project, no need to put it under the trunk.

As I did above, I have added two folders under the Archive folder: Meetings & Reports. These are the two broad categories which should not be part of any baseline.