最後のデータ移行です。
○移行用設定ファイル作成
データ移行のための設定ファイルを作成します。
基本はMSDNのサンプルでOKなのですが、かの有名な川保さんのページにあるように、設定ファイルのサンプルに一部情報が不足しています。(接続先TFSのcollection属性)
collection属性を付け加えた設定ファイルのサンプルはこんな感じになります。
<?xml version="1.0" encoding="utf-8"?>
<SourceControlConverter>
<ConverterSpecificSetting>
<Source name="VSS">
<VSSDatabase name="[VSS DBファイルの格納フォルダ]"></VSSDatabase>
<UserMap name="[ユーザマッピングファイル名]"></UserMap>
</Source>
<ProjectMap>
<Project Source="$/" Destination="$/[TFSプロジェクト名]"></Project>
</ProjectMap>
</ConverterSpecificSetting>
<Settings>
<TeamFoundationServer name="[TFSサーバ名]"
port="8080"
protocol="http"
collection="tfs/[接続先Collection名]"></TeamFoundationServer>
<Output file="[移行結果出力ファイル名]"></Output>
</Settings>
</SourceControlConverter>
○データ移行実行
Visual Studio コマンドプロンプト(2010)を管理者権限で起動します。
VSSConverterコマンドをMigrateオプションをつけて実行します。
VSSConverter Migarate [移行用設定ファイル名]
ここで、KB950185のパッチが適用されていないと、こんな確認メッセージが表示されます。
しかし、2011/07/23時点で、MSのKB950185の情報ページを見ると、パッチファイルはダウンロードできない状態になっています。
ここにはあるようですが、これを使ってサポートが受けれるかどうかは確認していません。
’Y’を入力すれば、とりあえず処理は継続できます。
2~3個の確認メッセージとVSS接続時のパスワード確認後に、実際の移行処理が実行されます。(状況に応じて確認メッセージは変わります)
しばらくすると、移行が完了します。
全体的な移行結果については[移行結果出力ファイル名(.xml)]に出力されます。
一度設定ファイルが出来上がってしまえば、移行対象が複数あってもファイルコピペ→一部修正で対応できるので、さほど難しくはないと思います。
あとは、VSSが壊れていないことを祈るのみです^ ^;