Microsoft KB Archive/270155

= How to move a VSS database with Visual InterDev projects and then reintegrate source control =

Article ID: 270155

Article Last Modified on 12/21/2004

-

APPLIES TO


 * Microsoft Visual InterDev 6.0 Standard Edition
 * Microsoft Visual SourceSafe 6.0 Standard Edition

-



This article was previously published under Q270155



SUMMARY
This article describes how to move a Visual SourceSafe (VSS) database to a different server and then reintegrate Visual InterDev projects with the VSS database so that you maintain file and project history.



MORE INFORMATION
There are three common scenarios to move a VSS database that contains Web projects that are created in Visual InterDev and hosted on Microsoft Internet Information Server.

Scenario 1: The Web server stays where it is, and VSS moves to a new computer.

Scenario 2: Both the Web server and VSS move to the same new computer.

Scenario 3: Both the Web server and VSS move to new, separate computers.

How to move the VSS database
In all three scenarios, follow these steps to move VSS:  Check all files back into the VSS database, and back up the database. To install the VSS server on the new computer, run Setup.exe from the VSS_ss folder on Visual Studio Enterprise 6.0 - Disk 2. To move the old VSS data to the new VSS computer, use one of the following methods:  Copy the data: On the new VSS computer, under the main VSS folder, rename the data folder. Copy all the old VSS/data, VSS/users folders as well as VSS/users.txt, and VSS/srcsafe.ini files from the old computer to the VSS folder on the new computer. Archive and restore the data: This approach lets you move data for each project. To archive and restore the data, follow these steps:

 On the old VSS database, open the Visual SourceSafe Administrator program. On the Archive menu, click Archive Projects. Select the project that you want to archive, and then click OK. If you want to archive additional projects, click Add, and then add the additional projects.</li> Click Next, and make sure that you select the Save Data to File option. You can also select the Save Data to File, then delete option because, after you move the database content, this option helps avoid confusion over which database to use. Give the archived data a file name and path on the network where it can be accessed from the new VSS computer, and then click Next. Click Finish to save the data.</li> From the new VSS computer, open the VSS Administrator program. On the Archive menu, click Restore Projects. Locate your archive file (it will have an .ssa extension), and then click Open. Click Next, select the project to restore, and then click Next again.

You can either restore the project to a project of the same name (this is the usual option), or you can restore it to a new project name. Choose your option, and then click Finish. As the restoration process continues, you may receive the following warning error message:

Destination database is not the same as the original. Some links may not be restored.

This does not create any problems if you follow the other approaches in this article.</li></ul> </li></ol>

How to configure the Web server
Note Follow these steps only when VSS is on a separate computer.  Install VSS client software on the Web server if it is not already installed. The client software is part of the Microsoft Visual Studio 6.0 Enterprise installation. Also, the Web server must have the Microsoft FrontPage server extensions installed and configured.</li> On the Web server, edit the Srcsafe.ini file, and delete all the existing content. Use a universal naming convention (UNC) path or a mapped drive to point the .ini file to its counterpart on the remote VSS server. For example, the line in your .ini file would look similar to the following line:


 * 1) include \\<myVssServer>\<vssDbShare>\srcsafe.ini

</li> From the Web server computer, click Start, click Run, and register the local VSS file named Ssapi.dll as follows:

regsvr32  \ssapi.dll

This registry entry combined with the entry in the .ini file above, triggers the Web server to use the remote VSS server.</li></ol>

How to reintegrate Visual InterDev projects with VSS
To reintegrate Visual InterDev projects and source control, follow the steps for the appropriate computer scenario.

Scenario 1: The Web server stays where it is and VSS moves to a new computer
 * 1) Open your existing Web project in Visual InterDev. In Project Explorer, select the solution file. On the Project menu, click Source Control, and then click Change Connection. Select the Work online check box, and then click Change Connection. Type the VSS path where this project exists on the VSS database. For example, type $/Production/WebSite1 . Click Open, and then type the name of a user who has already been set up in the new VSS database. Click OK. You are then prompted to add the solution to a particular VSS project. Select the same project folder that the solution file was under in the previous database, and then click OK.
 * 2) In the Project Explorer, select the Visual InterDev project, and perform the Change Connection steps (as outlined in the previous item) for the project and all its subfiles to the new database. Even though the Web server stays where it is, you avoid deleting any content on your computer or the Web server by doing this; you just resynchronize the existing files with the VSS database.

Note Each Visual InterDev user who wants to work with the reintegrated project must perform these first two steps.
 * 1) Enable basic authentication on the Web server. To do this, open the Internet Services Manager on the Web server, right-click your project name, and then click Properties. On the Directory Security tab, in the Anonymous Access and Authentication Control frame, click Edit. Select the Basic authentication check box, and clear all the other check boxes. You must be in basic authentication mode to access the remote VSS database through the Web server. Restart the Web server from the command line to clear any cached information.

Scenarios 2 and 3: Both the Web server and VSS move either to the same computer or to new different computers
 * 1) Delete the whole local Visual InterDev copy of the Web project. This is generally found in the My Documents\Visual Studio Projects folder.
 * 2) Create a new project in Visual InterDev, and give it the same name that it had before, but point it to the new Web server.

Note If VSS and the Web server are on different computers, perform step 3 from Scenario 1 just above to enable basic authentication on the Web server.
 * 1) In Project Explorer, select the solution file. On the Project menu, click Source Control, and then click Change Connection. You can now point the project to the new database. In the Set Source Control Connection dialog box, click Set Connection, and then click Browse. Locate the new VSS database folder on the network. Select the Srcsafe.ini file, and then click Open.

When you are prompted to save Solution or Selection, click Solution. This saves the .sln file back in the database, recalculates, and links the file up with all the other files in VSS, while adding them to your InterDev project.

When you are prompted to replace your local Global.asa file, click Yes. Any files in your new project that Visual InterDev creates automatically, such as the Script Library files, show as if they are already checked out, even though you supposedly added them to source. To work around this, when the process finishes recalculating, right-click the Solution file in the Project Explorer again, and then click Undo checkout. You are warned that it will replace all the local files with the versions from the database. This is correct. The process takes the originals from the database and overwrites any new files that Visual InterDev has just created. In this way, it restores your original files.
 * 1) After one user has gone through these steps, each additional user who wants to work with the reintegrated project must follow these steps:
 * 2) Delete the local Visual InterDev copy of the Web project.
 * 3) In Visual InterDev, create a new project with the same name. When you are prompted to specify the server, point to the new Web server.
 * 4) When the wizard asks whether to create a new project or connect to an existing one, connect to the existing project of the same name on the new Web server.

<div class="references_section">