The Handoff feature allows you to migrate your source code from Visual SourceSafe to Vault Professional.
In order to use this feature Microsoft Visual SourceSafe should be installed on the Vault Professional server computer. For up-to-date information on version compatibilities, see: http://support.sourcegear.com/viewtopic.php?t=11526.
Because Visual SourceSafe is 32-bit only, this feature is only supported when the 32-bit version of the Vault Professional server is installed, and IIS is set to allow 32-bit web applications. For information on configuring IIS to enable 32-bit applications, see http://support.sourcegear.com/viewtopic.php?t=11526.
Older versions of Vault Professional would import all history from Visual SourceSafe. This approach was very slow, and fell victim to VSS corruption, where some versions of a file could not be imported. Handoff now only gets the latest version from VSS, and later queries VSS for historical versions, as needed.
For example, the table below shows a VSS database with a shared and pinned file. The Vault Professional row shows the same folder structure and files after the Handoff, with the most-recent VSS versions becoming the initial versions in Vault Professional
When VSS history is needed for a file, it can be accessed from the client's history dialog. The results in this case look like:
Only two versions were imported (one for each of the active versions in VSS). If any of the other versions are needed, they can be downloaded and compared with Vault contents, of viewed on their own.
VSS history is only available for files. History queries on folders are not supported.
The Handoff Sources page allows global Administrators to add new VSS databases, and to edit the connection information to existing databases.
Note that Handoff sources cannot be deleted. If sources were deleted, then files which had been handed off could never be configured to point to a new source. To add a new Handoff source, click the Add button.
A Handoff source has the following properties:
The path to the VSS database's srcsafe.ini file. This path should be accessible from the server. If the path cannot be found, the Handoff source will not be added.
The name of the VSS user to log in to VSS. This user should have VSS read access to the entire database.
The default account that IIS runs web server processes under normally has restricted rights to local paths on server's disk, and restricted access to the network. Entering credentials in the Impersonated Windows User and Impersonated Windows Password will cause all connections to this VSS database to be performed as the specified windows user.
The following operations can be performed on an existing Handoff source.
This option is useful if the path to the VSS database has changed, or you wish to change the windows account that is used for impersonation.
This option will compare the users in this VSS database with users in Vault Professional and create new Vault users.
This option will begin a new Handoff operation. See Handoff for more information.
A Handoff operation examines the latest version of a VSS database, and commits the latest version of each file in the selected VSS project into Vault Professional. It can be thought of as a "shallow import." There are several steps in the Handoff process.
This is the path that will be imported.
The contents of the folder will be imported, not the folder itself. If you wish to import a VSS path $/trunk into an empty Vault Professional repository, as $/trunk, you must first create a $/trunk folder in the Vault Professional repository. In general, if you want the imported paths to match exactly, the path of the imported object in VSS should match the target path in Vault Professional.
Shares under this path will be reestablished only with other shares under this path. For example, if you are importing the VSS path $/trunk to the Vault Professional path $/trunk, a shared item with the links $/trunk/src/file.h and $/trunk/dist/file.h would be established as a Vault Professional shared item. An item with VSS share links $/trunk/src/file.h and $/branch/src/file.h would not be established as a Vault Professional shared item, since $/branch/src/file.h is not included in the import.
The repository where the files will be committed.
The repository folder where the files will be committed.
This step shows progress and errors. To begin the handoff, click the Start Handoff button. Once the handoff operation is complete, the next page will be automatically loaded. Please do not navigate away from this page while a handoff is running.
This will display all errors that were encountered during the handoff operation. Please check these files, and manually add them if necessary.
This page will list the users in VSS which do not have a matching Vault Professional user with the same name. After selecting the user names to import, and clicking the Import Selected User Names button, you will be prompted for a password which will be given to all of the newly created users.
Folder Security rights will not be imported for the users, so you will need to manually correct those for each repository. In addition, you must check the repository access for any repositories which have Folder Security diabled.