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 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.
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 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
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!