Tips for performing a Handoff from VSS

A collection of information about Vault, including solutions to common problems.

Moderator: SourceGear

Post Reply
Posts: 1821
Joined: Thu Dec 18, 2003 11:39 am
Location: Sourcegear

Tips for performing a Handoff from VSS

Post by jeremy_sg » Fri Apr 03, 2009 3:29 pm

VSS Handoff brings the latest versions of your VSS projects and files into a Vault repository. You can see VSS History from within Vault History and you can view and diff historical versions of your files in VSS. VSS Handoff maintains shares and pins. The Handoff does not import labels. If you need versions of your code from prior to the Handoff, you would get them using VSS.

The following tips will help your handoff go as quickly and as smoothly as possible. Once the handoff is done, you will need to keep your VSS database in the same location, since the Vault server will connect back to it when VSS history information is needed.

Before you start! Since VSS is a 32-bit only application, Vault's VSS connectivity features are only available when the 32-bit Vault Server is installed. You may have to configure IIS 7 to allow 32-bit applications. For help with that configuration, see:

1. We recommend that the VSS software and database be on the same machine as the Vault server. The software includes the VSS automation component that is needed (ssapi.dll) and sets the registry keys that point to it. Make sure the account that Vault runs under, or the Windows account that the import is impersonating, has full control of the VSS directory

2. During the handoff, you should disable any virus protection which may be present on the server machine. This can slow down the handoff considerably.

3. On the machine with the Vault server, you should install the English language version of SourceSafe. It is recommended that you use either VSS 2005 sp1 or VSS 6.0c available at

Some users have had problems with non-English versions of SourceSafe, so use the English language version. You can verify that you are using the English version of SourceSafe by examining the directory with the ssapi.dll file. The only language dll in that directory should be named ssus.dll.

4. Do not use your SourceSafe database during the handoff. In fact, it is best if you run the import on a backup copy of the database, not on the copy you usually use. You may use the VSS database after the handoff is complete, but changes made in VSS will not be automatically migrated to Vault.

5. Be sure to run the SourceSafe 'analyze' utility on your database before doing the handoff. If your VSS database is not healthy, you are likely to run into problems when retrieving files during the VSS handoff. A properly running database should be able to run the VSS 'analyze' with the -f (fix) option without any errors. The Handoff uses the VSS Automation Component to communicate with the VSS database and the automation component is sensitive to even minor VSS database corruption. Despite a clean "Analyze" report, your Handoff may still encounter errors getting files.

6. Make sure there is a temp directory in the directory where the SourceSafe database resides. If not, create a Temp directory in the directory that contains the srcsafe.ini file. (The Temp directory and srcsafe.ini file should be siblings.) The cause of this error:
**Failed** to Get version X of Y
is generally because there is no SourceSafe temp directory.
Subscribe to the Fortress/Vault blog

Post Reply