The Ins and Outs of Team Foundation Server (TFS)


When working in a team on one or more projects, your project or projects can very quickly become quite messy. Keeping track of source code changes or minor tweaks on a certain form's design can quickly get lost in translation. Apart from making regular backups, using a product like Team Foundation Server will save you a lot of unintended headaches.

Team Foundation Server

Team Foundation Server provides source code management, requirements management, project management, automated builds, testing, and release management for all your projects.

Source Control Management

Source Control Management provides coordination and services between members of a software development team. This includes version control and file management. These two options form the whole core of Team Foundation Server because it is deeply integrated into Team Foundation Server. Version control and file management ensures that each member of the software development team always gets the latest version of the particular file that has been worked upon.

Requirements Management

Requirements management is the process of analyzing, documenting, prioritizing, tracing, and agreeing on requirements. It is a continuous process throughout a project. Here is a great article series on Requirements Management and Team Foundation Server.

Project Management

Team Foundation Server and Microsoft Project Server can be configured so that the synchronization engine can maintain the scheduling of scheduling data and resource usage for the configured data in the mapped enterprise project plan and the team project. Here is a great article explaining how to enable this capability in Team Foundation Server.

Release Management

Release Management in Team Foundation Server allows you to manage the release of your app by deploying it to a specific environment for each separate release step. Here is a step-by-step guide on how to do this in Team Foundation Server.

Working with Team Foundation Server

Team Foundation Server is always connected to the project(s) you have assigned it to. When you open a project (C#, VB), you will notice that you will have a new tab displayed. This is the Team Foundation Server tab; it is usually quite close to your Solution Explorer. The Team Foundation Server resembles Figure 1.

Figure 1: Team Foundation Server tab

Pending Changes

Any changes you make to the files in your projects will be placed in a queue as a 'Pending Change.' While working, you can organize, manage, and get details about what you've changed.

Included Changes contains all the items that will be saved. Excluded Changes will, well obviously, be items that you can exclude. These changes might be incomplete classes or forms, or items that still need a bit of final tweaking. More details can be found here.

Source Control Explorer

Source Control Explorer manages version control such as team projects, folders, and files. The benefits of using Source Control Explorer are as follows:

  • View all pending changes.
  • Browse team projects and workspaces.
  • Determine whether or not items are synchronized, or copied to your local PC's workspace.
  • Undo or check in pending changes.
  • Check out folders and files for editing.
  • Determine whether you have the latest version of an item.
  • Get the specific or latest version of a folder or a file.
  • Lock and unlock folders and files.
  • Shelve source control items.
  • Delete, undelete, rename, and move folders and files.
  • Resolve source control conflicts.
  • View the history associated with source control folders and files.
  • Compare versions of folders or files.
  • Branch and merge source control team projects, folders, and files.
  • Apply labels to changesets.
  • View the properties associated with folders and files.


When working in a team, having Team Foundation Server at your disposal is essential. Until next time, cheers!

This article was originally published on April 6th, 2016

About the Author

Hannes DuPreez

Hannes du Preez is a self-taught developer who started learning to program in the days of QBasic. He has written several articles over the years detailing his programming quests and adventures. .NET is his second love, just after his wife and kid. He has always been an avid supporter of .NET since the beginning and is an expert in VB and C#. He was given the Microsoft Most Valuable Professional Award for .NET (2008–2017). He has worked as a moderator and an article reviewer on online forums and currently works as a C# developer and writes articles for CodeGuru.com, Developer.com, DevX.com, and the Database journal.
His first book Visual Studio 2019 In Depth is currently on sale on Amazon and Bpb Publications.

You could reach him at: ojdupreez1978[at]gmail[dot]com

Related Articles

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date