Source Control Basics

Source control refers to a system in which a central piece of server software stores and tracks file versions, and also controls access to files. A typical source control system includes a source control provider and two or more source control clients.

A source control provider provides archiving, versioning, and control facilities for a dynamically defined set of files. The provider stores the differences between versions, as well as crucial information about the version: when it was created, when it was modified, and by whom. When several people are working on the same file, they must use the same code page, so that versions can be accurately compared.

To avoid conflicting file versions, a source control provider controls file access, enforcing a protocol by which users who want to modify a file must check it out. If a file is checked out exclusively, only the user who checked it out can modify it. When the file is checked back in, that file becomes the latest available version.

File check outs, check ins, and other source control operations are actually accomplished through a source control client, such as SQL Server Management Studio. The client is designed to interact with the provider to make the provider's capabilities available to a distributed group of users. Using a source control client, users can browse the files stored by the provider; add and delete files; check files in and out; and retrieve copies of local files.

This documentation assumes that you are using Microsoft Visual SourceSafe as your source control provider. If you are using a different source control provider, you might see differences between this documentation and the software you are running. If you see differences, consult the documentation for your source control provider.

Topic Description

Source Control Benefits

Explains why placing your assets under source control can be beneficial to your organization.

How to: Set Source Control Options

Explains how to define roles to work in varying development settings.

How to: Change Source Control Connections

Explains how to change the source control project folder that a local solution or project is connected to.

How to: Exclude Files from Source Control

Explains how to exclude files that do not require source control services.

Community Additions