Friday, April 17, 2009

Still trying to wrap your head around Team Foundation Server workspaces? Here’s a quick primer…

Continuously Integrating - Workspaces in Team Foundation Server - Part 1

“One of the reasons they can do this is because they are somewhat out of sight, out of mind and can be created without any intervention of the user.

First a primer on what they are and how they work. A workspace represents a user (Larry) working on a specific computer (Workstation1) with a selection of files from Team Foundation Version Control (TFVC), maybe it is all of the files stored in the “BigApplication” project ($BigApplication), that are copied to my workstation in a specific location, perhaps to D:\DevelopmentProjects\BigApplication. This data represents four distinct pieces of information; who, what workstation, which server files/directories, where are the server files mapped to on the workstation.

All of this information is stored on the Team Foundation Server.

When a user first connects to TFVC and gets files from the server to their workstation the user is asked where to copy the files on the workstation. This creates the “which” and “where” elements of the four pieces of information, by simply connecting to TFS the user and workstation (“who” and “what”) are identified to the server. Once the user has told TFS where to copy the files TFS automatically creates a workspace with the relevant information. Using the example above I would have a workspace with the following information:

In my next post on this subject I will look at managing workspaces from the command line as well as some recommended best practices.”

I don’t know what it was (probably a brain patterns built from using MS Delta –> SourceSafe) but TFS Work Spaces was  one of the harder things for me to “get” with TFS.

In the above post, Larry has put together a nice primer and introduction to TFS workspaces. What I liked about it was that it went beyond “This is a workspace… this is how you create one… etc” and toward more real world like multiple developer interactions with an application beyond “Hello world”

 

Related Past Post XRef:
Team Foundation Server Workspaces 101

No comments: