How do I organize many projects on Team Foundation Services (TFS in the cloud)

cloud, tfs

Solution

I think the key is to understand the organisational structure on offer to you with `Team Foundation Service`. How you choose to organise it is ultimately up to you.

You have the following available to you in `Team Foundation Service`.

- One Project Collection

- In normal TFS you can have many Project Collections. In `Team Foundation Service` (at the time of writing), you can only have 1.

- Team Projects

- These are the projects that go into the Project colection.

- You can put many solutions into one `Team Project` or you can simply have one.

- Source Control Folders

- Each project obviously contains Source Control folders, so these could be further split up into projects.

I don't have as many projects as you, but I do something like this:

- Create dedicated `Team Projects` for major projects (solutions)

- Put similar minor projects (solutions) into one `Team Project`

- You can even nest things further. I have included a real world scenario I use for the SSRS report we write.

See below for an example how I do it:

- Collection (Project Collection)

- Major Project 1 (Team Project)

- trunk

- branches

- branch 1

- Group Of Minor Projects (Team Project)

- Minor Project 1

- trunk

- branches

- Minor Project 2

- trunk

- branches

- Minor Project 3

- trunk

- branches

- Major Project 2 (Team Project)

- trunk

- branches

- branch 1

- Group of SSRS Projects (Team Project)

- 2005

- Clients

- Client1

- trunk (Optional)

- branches (Optional)

- Client2

- Client3 Shared (All Clients)

- 2008

- Clients

- Client1

- Client2

- Client3 Shared (All Clients)

- 2008 R2

- Clients

- Client1

- Client2

- Client3 Shared (All Clients)

One point to remember is that builds are separated by `Team Project`. So this might impact your decision further.

Problem

How do I organize many projects on Team Foundation Services (TFS in the cloud). I have about 300 solutions (with multiple projects in each solution) that I want to source control in TFS. The problem is how do I organize them? A little background: I am an contract developer so I work for many clients and have many projects written in VB and C# ranging from VB6 to .net 4.5 and everything in between.

Original source