ワークスペース内のいくつかのファイル/フォルダーを手動で削除しました。TFS ワークスペースでこれらのアイテムの削除を保留し、それらの削除をリポジトリに反映するにはどうすればよいですか (コマンド ラインまたはプログラム API を使用)。
4 に答える
Team Foundation Server Power Toolstfpt online /deletes
からコマンドを使用できるはずです。サーバーワークスペースにない追跡されていないローカルの変更を「昇格」するように求められます。
作業フォルダー内の項目を削除しても、ソース管理内の削除は反映されません。ソース管理からアイテムを削除するには、次の手順を実行します。
ソース管理UIから削除します。これを行うには、アイテムを右クリックして削除し、変更をコミットします。
VS コマンド ラインを開き、tf プロパティ コマンドを実行します。例:
tf properties /s:TFSServerCollection "$/FilePath/Filename.jpg"
これにより、削除 ID を取得できます。この例では、削除 ID 12345 とします。同じ VS コマンド ライン ウィンドウで、tf destroy コマンドを実行します。例:
tf destroy /s:TFSServerCollection "$/FilePath/Filename.jpg";x12345
削除 ID の前に「x」を追加することを忘れないでください。Enter キーを押すと、アイテムを削除するかどうかを尋ねられます。はいと言って、Enter キーを押します。tf destroy complete はアイテムやフォルダーをソース管理から削除し、その履歴を含むので注意してください。
Visual Studio 2012 の場合: これらの削除は検出されますが、「除外された変更」セクションに一覧表示されます。このリストを開き、クリックして変更を「プロモート」します。
削除されたファイルは通常の変更と同じようにチェックインできますが、Solution-Explorerを使用してチェックインする場合、削除されたファイルは含まれません(ソリューションにまだ含まれているファイルのみが変更セットに含まれるため)。
私は常にsource-control-explorerを介してチェックインを行います-その後、削除されたファイルもチェックインに含まれます(これらの削除されたファイルがチェックインしているsource-control-folderの下にある場合)
ヨハネスのご挨拶
PS:Windowsファイルエクスプローラーを使用してファイルを削除した場合、作業コピーでは「削除済み」としてマークされません。常にVS2010を使用してファイル(またはTFS Server-Powertoolsに含まれているシェル拡張機能)を削除します