1

TFS2008 で古いツリー パス (移動、名前変更など) の特定のラベル バージョンを取得するのに問題があります。

私が抱えている問題は次のとおりです。

ツリー バージョンのファイルとフォルダの一部の名前を変更して移動しましたが、特定のラベルから特定のバージョンを取得できません。このラベルは古いツリー パスに適用され、特定のバージョン (上書きオプションがオンになっている) を取得すると、[最新] 列に "ダウンロードされていません" と表示され、古いベースライン (ラベル付きのファイルとフォルダー) で作業できません。カスタム ターゲット パスで特定のバージョンを取得する方法はありますか? TFPT はこれを行うのに役立ちますか?

ありがとう!

4

2 に答える 2

1

解決策は、プロジェクト ルートで特定のバージョン ラベルを取得することです。そのため、古いツリー バージョンのパスが提案されます。

于 2011-02-14T09:44:42.493 に答える
0

Nicola Celiento: あなたの質問と回答を見たとき、私はこれを新しい質問として投稿しようとしていました。

$/MyProject/Dev/OldName という名前のブランチがあり、2015 年 5 月に $/MyProject/Dev/NewName に名前が変更されました。2014 年 4 月 (ブランチの名前が変更される前) の時点で、このブランチのすべてのファイルを取得したいと考えています。しかし、これを行う方法がわかりません。これまでのところ、私は試しました:

$/MyProject/Dev/NewName にマップされた新しいワークスペースを作成します。$/MyProject/Dev/NewName で Get Specific Version を実行し、Type を Date に 2014 年 4 月現在に設定し、Overwrite writeable files と Overwrite all files を設定します。これにより、次のメッセージが表示されます。このメッセージは、メッセージを取得するために行ったことを正確に実行するように指示しているため、奇妙です! ソース管理エクスプローラーでは、すべてのファイルのステータスが [ダウンロードされていません] になっています。

コマンド ラインから、新しいブランチ名を使用して get を実行します (動作しません - ワークスペースにファイルがありません)。

C:\Workspace>tf get $/MyProject/Dev/NewName /version:D"2014-04-08 21:00:00" /overwrite /force /recursive すべてのファイルが最新です。

コマンド ラインから、古いブランチ名を使用して get を実行します (これも機能しません - ワークスペースにファイルがありません)。

C:\Workspace>tf get $/MyProject/Dev/OldName /version:D"2014-04-08 21:00:00" /overwrite /force /recursive $/MyProject/Dev/OldName に適切なマッピングが存在しません。

ワークスペースを古いブランチ $/MyProject/Dev/OldName にマップするように変更し、以前の取得を繰り返しました (これも機能しません - ワークスペースにファイルがありません)。

C:\Workspace>tf get $/MyProject/Dev/OldName /version:D"2014-04-08 21:00:00" /overwrite /force /recursive C:\Projects: OldName の取得

個々のファイルで View History を使用すると、ファイルが 2014 年 4 月に確実に存在していたことを確認できます。また、その内容も確認できます。その日付では取得できません (ただし、ブランチの名前を変更した後は取得できます)。

Nicola Celiento の回答に基づいて、私にとっての解決策は、ルート $/MyProject/Dev プロジェクトで特定のバージョンを取得することでした。これにより、必要な古い $/MyProject/Dev/OldName を含む、$/MyProject/Dev の下のすべてのブランチが取得されました。

于 2015-07-08T10:40:03.803 に答える