VSSConverter Command-Line Utility for Source Control Migration

Use the VSSConverter command-line utility to analyze and then migrate Visual SourceSafe databases to Team Foundation version control.

The VSSConverter.exe is located in <drive>:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE and is also available at the Visual Studio Command Prompt.

Important noteImportant Note:

The VSS Converter requires Microsoft Visual SourceSafe 2005 or a later version.

The following global options are available to all VSSConverter commands.

Option

Description

/?, /h, /help

Displays help.

What Is Preserved After Migration

When you migrate from Visual SourceSafe to Team Foundation version control, the following historical information is preserved:

  • Add File or Folder   Saves the file or folder name, the date and time added, and the user name.

  • Delete File or Folder   Saves the file or folder name, the date and time deleted, and the user name.

  • Undelete File or Folder   Saves the file or folder name, the date and time undeleted, and the user name.

  • Rename File or Folder   Saves the old file or folder name, the new name, the date and time of the rename, and the user name.

  • Edit File   Saves the date and time checked in and the user name.

  • Modify Label   Saves the label name, the date and time modified, and the user name.

  • Move Folder   Saves the old location, the new location, the date and time of the move, and the user name.

    Note

    Information about folder moves in a Visual SourceSafe database is only preserved in Team Foundation version control if both the source and destination folders are migrated at the same time.

What Is Not Preserved After Migration

The converter tool does not preserve historical information about the following Visual SourceSafe actions:

  • Sharing   Sharing is not supported in Team Foundation version control. The shared Visual SourceSafe files are migrated to Team Foundation version control by copying the version of the file at the time sharing began to a destination folder. Thereafter, the changes that are made to the shared file are replicated to both copies.

  • Branching   Because sharing is a pre-condition of branching; the migration of a shared file creates a copy of the file to the destination folder. After branching, changes to any branch are migrated to the respective copy in Team Foundation version control.

  • Pinning   Team Foundation version control does not support pinning. All pinned files are migrated by creating two labels. The PINNED_LATEST label is applied to the pinned versions of the pinned files and the latest version of the unpinned files. The PINNED label is applied to only the pinned versions of the pinned files. After migration, the PINNED_LATEST label retrieves the same files as a Get Latest operation in Visual SourceSafe. However, the PINNED_LATEST label might return different files if events other than check-in, such as a rename or a delete, occurred after a file was pinned.

  • Folders with a Combination of Move and Restore Action   Migrating a folder that has a version history that includes a move action in combination with a restore action might not migrate correctly.

Time Stamps

The time stamp associated with an action is not preserved during migration because it is replaced by the time stamp at the time of conversion. The original time stamp of a user action is appended to the comment as shown in the following example.

Visual SourceSafe Before Migration

Team Foundation Version Control After Migration on May 2, 2005 at 3:30 p.m,

User Action: $/ProjectA/a.c checkin

Version: 5

Time Stamp: June 3, 2002 12.30pm

Comment: Fixed bug in Screen "Welcome"

User Action: $/ProjectA/a.c checkin

Version: 5

Time Stamp: June 3, 2002 12.30pm

Comment: {06/03/2002 12.30 PM}

Fixed bug in Screen "Welcome"

Source Control Bindings

VSS Converter does not migrate source control bindings. After migration you must change the source control bindings for any Visual Studio solutions so that they are bound to Team Foundation version control. For more information about how to migrate source control bindings, see How to: Migrate Source Control Bindings from Visual SourceSafe

In This Section

Migrating from ClearQuest

Migrating from Visual SourceSafe

See Also

Concepts

How History Events Are Migrated