本演练描述如何使用 VSS 转换器工具 VSSConverter.exe 从 Visual SourceSafe 迁移到 Team Foundation。有关如何为迁移准备数据库的信息,请参见演练:准备从 Visual SourceSafe 迁移到 Team Foundation。在该演练中,您将了解到有关如何为迁移到 Team Foundation 准备 SourceSafe 数据库和用户列表的详细信息,并对迁移过程的工作方式获得更好的了解。
在本演练中,您将完成以下任务:
在尝试完成本演练之前:
此外,还需要以下信息:
-
一个 Team Foundation Server 名称。
-
您必须是 Team Foundation Administrators 组的成员。
-
在计划要运行转换器的计算机上安装 SQL Server Express。
默认情况下,安装 Visual Studio 2005 时会安装 SQL Express。
您必须拥有管理员权限才能连接到 SQLExpress 数据库以使用转换器工具。
-
运行 VSSConverter 的计算机上的 Visual SourceSafe 2005。
在继续实际的转换之前,请自定义设置文件,使其含有在为转换做准备时指定的 SourceSafe 项目目标文件夹。必须完成演练:准备从 Visual SourceSafe 迁移到 Team Foundation 中列出的所有步骤才能完成此任务。
修改设置文件
-
单击“开始”,单击“程序”,指向“Microsoft Visual Studio 2005”,指向“Visual Studio Tools”,然后单击“Visual Studio 2005 命令提示”。
-
在命令提示符处键入 cd %驱动器号%\VSS2TeamFoundation。如果此文件夹不存在,则创建它。
注意 |
|---|
| 确保系统驱动器有足够的空间能够容纳待迁移最大文件的大小。 |
-
复制您为该分析创建的设置文件,并以新名称保存,例如 migration_settings.xml。
-
在命令提示符处键入 notepad migration_settings.xml,然后按“Enter”键。
-
按如下方式更改设置文件。
-
在 <ProjectMap> 部分,对于要迁移的每个 VSS 文件夹,请添加 Team Foundation 源代码管理 中的目标文件夹。使用以下格式添加 Destination 部分,如下面的示例所示。
<Project Source="$/FolderA" Destination="$/Team_Project"></Project>
若要迁移 VSS 数据库中的所有内容,则应插入下面的 XML。
<Project Source="$/" Destination="$/Team_Project/"></Project>
-
在 <Settings> 部分的下面,添加一个 <TeamFoundationServer> 部分,并指定要迁移到的 Team Foundation Server 的名称、端口和协议。使用以下格式。
<TeamFoundationServer name="TFS_server_name" port="port_number" protocol="http"></TeamFoundationServer>
例如,
<TeamFoundationServer name="AdventureWorks" port="8080" protocol="http"></TeamFoundationServer>
注意 |
|---|
| 如果 Visual SourceSafe 数据库很大,由于 SQLExpress 的 4 GB 限制,迁移可能会失败。若要解决此问题,您可以按照如何:在 Visual SourceSafe 中使用存档迁移部分历史记录中的描述迁移部分历史记录,或者通过添加下面的行来将转换器设置为使用 SQLServer:<SQL Server="SQL_Server_name"></SQL> |
-
保存所做的更改并关闭记事本。
创建新的设置文件
-
单击“开始”,单击“程序”,指向“Microsoft Visual Studio 2005”,指向“Visual Studio Tools”,然后单击“Visual Studio 2005 命令提示”。
-
在命令提示符处键入 cd %驱动器号%\VSS2TeamFoundation。
-
复制您为该分析创建的设置文件,并以新名称保存。
-
键入 notepad migration_settings.xml,然后按 Enter。单击“是”创建新文件。
-
将下面的 XML 复制到 settings.xml 中。
<?xml version="1.0" encoding="utf-8"?>
<SourceControlConverter>
<ConverterSpecificSetting>
<Source name="VSS">
<VSSDatabase name="c:\VSSDatabase"></VSSDatabase>
<UserMap name="c:\Migrate\Usermap.xml"></UserMap>
</Source>
<ProjectMap>
<Project Source="$/FolderA" Destination="$/TeamProjectA"></Project>
<Project Source="$/FolderB" Destination ="$/TeamProjectB/ProjectB"></Project>
</ProjectMap>
</ConverterSpecificSetting>
<Settings>
<TeamFoundationServer name="server_name" port="port_number" protocol="protocol"></TeamFoundationServer>
</Settings>
</SourceControlConverter>
-
按下面的步骤更改迁移设置文件。
在 <ProjectMap> 部分,对于要迁移的每个 VSS 文件夹,请将 FolderA 替换为源 VSS 文件夹,将 TeamProjectA 替换为 Team Foundation 源代码管理 中的目标文件夹。为要迁移的所有文件夹包括一个 <Project> 项。
若要迁移 VSS 数据库中的所有内容,则应插入下面的 XML。
<Project Source="$/" Destination="$/Team_Project/"></Project>
注意 |
|---|
| 迁移期间转换器使用 SQL Express。如果迁移由于 SQL Express 中的 4 GB 限制而失败,您可以将下面的行添加到 <Source name="VSS"> 部分,从而将转换器设置为使用 SQL Server:<SQL Server="SQL_Server_name"></SQL> |
-
保存所做的更改并关闭记事本。
运行转换器
-
将 Visual SourceSafe 数据库复制到要在其上运行分析和迁移的计算机上的本地文件夹。虽然可以迁移远程计算机上的共享文件夹中的 Visual SourceSafe 数据库,但是要花更长的时间才能完成迁移。
-
单击“开始”,单击“所有程序”,指向“Microsoft Visual Studio”,指向“Visual Studio 工具”,然后单击“Visual Studio 命令提示”。
-
在命令提示处,键入以下命令:
VSSConverter Migrate migration_settings.xml
提示 |
|---|
| 使用 /? 开关查看可用的命令行选项。 |
-
键入 Y 确认迁移。
转换器工具将显示迁移状态。当转换过程完成时,该工具在当前目录中保存迁移报告。可以使用 Internet Explorer 查看该文件以了解详细信息。
-
当出现提示时,请提供 Visual SourceSafe Admin 用户的密码。
若要执行此演练,您必须具有对要迁移的 Visual SourceSafe 数据库的管理员权限。有关更多信息,请参见How to: Assign Project Rights。您还必须是 Team Foundation Server 上“Team Foundation Administrators”安全组的成员。有关更多信息,请参见 Team Foundation Server 权限。您还必须是 SQL Express 的“sysadmin”服务器角色的成员。默认情况下,如果您是安装了 SQL Express 的计算机上“Administrators”安全组的成员,您便是“sysadmin”服务器角色的成员。有关更多信息,请参见 SQL Server 2005 文档中的“sysadmin”(http://go.microsoft.com/fwlink/?LinkId=60405)。
任务
如何:为源代码管理分析和迁移创建设置文件
概念
为 Visual SourceSafe 用户介绍 Team Foundation
其他资源
Team Foundation
用于源代码管理迁移的 VSSConverter 命令行实用工具