12.1. Version Control Overview

Ideally, a version control system is supposed to save you time and money. The purpose of a version control system is to enable development teams to track and protect all assets involved in the development of the application. Most important of these assets is the source code, but you also want to track changes to documentation, executables, graphics, and pretty much anything that is involved with the project.

Version control systems allow you to track all the changes made to a file. With this information, it is easy to restore a previous version of a file, if it is needed. Version control systems use security, to ensure that no unauthorized access is permitted to the system. Moreover, a version control system extends beyond just developers. Anyone involved in a project who uses a computer to manage project information can benefit from the use of a version control system.

12.1.1. Different Version Control Systems

There are many systems on the market today. Some are free and some are not. This section discusses three of the most commonly used systems today: Visual SourceSafe, CVS, and Subversion, and then introduces you to Team Foundation Version Control.

12.1.1.1. Visual SourceSafe

Visual SourceSafe (VSS) is a version control system from Microsoft for use with Microsoft Visual Studio. It is designed to be easy to use right out of the box, and to integrate effectively into Visual Studio. It also provides a command-line tool and separate IDE for accessing ...

Get Professional Team Foundation Server now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.