How Visual SourceSafe Works

A typical Visual SourceSafe network consists of one centralized database on a server and clients running on one or more individual machines. For example, in a software development environment, you will store your code in the database and do the editing and compiling for the code on one of the client machines.

Files, projects, and their historical versions are the basic units of operation and organization in a Visual SourceSafe database. Visual SourceSafe monitors the database at all times and records the activity on each source-controlled item. Therefore, it can reconcile differences if more than one team member modifies a particular file or project.

For you to be able to use Visual SourceSafe after installation, you or another person must be designated as the database administrator. This type of user has Administrator rights for the network and the database. The database administrator must configure the server as necessary, create the database, and perform any required customization for your site. After the database is ready for use, the administrator has to secure it and protect it from unauthorized use by setting up the database user list and assigning user permissions and project rights.

After the configuration of the site for the team, users can begin to use the database. Typically, team members will use the database to check out files, make changes, and then check the files back in, using an exclusive checkout model. In support of file sharing to enhance operations in a team environment, Visual SourceSafe also supports a multiple checkout model, which allows file sharing and merging of file versions after changes are made. For more information about the two models, see Work Styles.

Checking Out Items

The Check Out command on the Versions menu in Visual SourceSafe lets you check out one file, multiple files, or all files in a project. When you check out a file, Visual SourceSafe places a writable copy in your working folder. The file pane of Visual SourceSafe Explorer shows statistics about the file, including your user name in the User column. For more information, see How to: Check Out a File or Project.

Undoing a Check Out Operation

Visual SourceSafe's Undo Check Out command allows you to reverse a checkout. This command does not create a new version of the file in the Visual SourceSafe database. You can choose to overwrite your local copy or retain it to save elsewhere.

The Versions menu of Visual SourceSafe Explorer allows access to the Undo Check Out command. For more information, see How to: Undo a Checkout.

Checking In a File

The Check In command, accessible through the Versions menu, allows you to check in one file, multiple files, or all files in a project. In response to this command, Visual SourceSafe places read-only copies of the files in the database. You are prompted for comments about the files you check in. The file pane of Visual SourceSafe Explorer shows statistics about the files, including your user name in the User column. For more information, see How to: Check In Changes to an Item.

Sharing Items with Other Users

Visual SourceSafe allows you to share files and projects through its Share and Branch commands, available on the Versions menu of Visual SourceSafe Explorer. Your database administrator can allow or disable multiple checkouts, as described in How to: Enable Multiple Checkouts. If multiple users will be making frequent changes to this file, the database administrator may want to consider enabling multiple checkouts.

In This Section

  • Architecture
    Introduces the server, client, and database components of Visual SourceSafe and discusses their operating environment.
  • Database Design
    Discusses details of a typical Visual SourceSafe database.
  • Purge Support
    Tells how Visual SourceSafe supports purging of deleted files and projects from a database.
  • Rollback Support
    Describes the way that Visual SourceSafe rolls back database files and projects to previous versions.
  • Search Engine
    Discusses the Visual SourceSafe search and find functionality.
  • Security
    Introduces database security in Visual SourceSafe, and references detailed information in other topics.
  • Version Control
    Provides an overview of the versioning mechanisms that Visual SourceSafe uses to keep track of database file or project history. This will create a new version of the file in the database, and will preserve the content of previous versions for later retrieval.
  • Web Project Support
    Describes the support that Visual SourceSafe provides for Web projects associated with a Web site.
  • Work Styles
    Discusses the Lock-Modify-Unlock (exclusive checkouts) and Copy-Modify-Merge (multiple checkouts) work styles for using a Visual SourceSafe database.

See Also


How to: Check In Changes to an Item
How to: Check Out a File or Project
How to: Enable Multiple Checkouts
How to: Undo a Checkout


Work Styles

Other Resources

Introducing Visual SourceSafe