static void

TFS 2010- workspaces, team projects

Published Sunday 13 December 2009

Team Foundation Server 2005/2008 didn't make much sense for small teams. TFS 2010 Basic allows you to have a simple, quick source control and issue ("work item") tracking for individuals. It should at least see the end of SourceSafe. Whether it will draw back those who have already jumped to subversion remains to be seen.

Creating workspaces and team projects is not something I'll do very often, so I'll record the steps here.

Download VS2010 and TFS 2010 from Microsoft and install. The TFS configuration wizard kicks in after the install, and is pretty simple.

Connect to TFS.

Spot two ways to do it in this screenshot.

Select TFS server - click "Servers" button

The servers list will be empty at first so click "Add" button

Fill in the server name.

Now the project collection is shown (always DefaultCollection with basic). Click "Connect"

Workspaces

You need to set up a workspace - the local path on your computer (in VSS this would be your "working directory").

In VS2010, File-Source Control - Workspaces.

It's empty to start. Typically you only have one per TFS server. Click "Add"

Map the server folder ("$/") to your local folder (here, C:\Dev)

New Team Project

Each TFS contains a number of collections (these root collections are new in 2010), Each collection contains a number of team projects. The team project is typically an application, comprising one or more solutions plus work items and documents. More information here (Codeplex guidance)

You can start a team project from the VS2010 File-New-Team Project or the team explorer.

It's a simple wizard. Name it, pick the type (you may have a Scrum template), Next, Next, Next.

Your source control is now empty. Don't just put a solution in there. Add New Folder, and use this to put your first code in. I'm calling it Trunk, but TFS people seem to call it "Main".

I created a Visual Studio solution within my workspace\project\trunk folder. I add it to source control.

And check in (pending changes window)

Why a subfolder called "Trunk" (or "main")? So I can create a branch.

I also create a "Branches" folder under the team project, and branch to a subfolder of that. Here I'm creating a branch for a new version (v4).