構文は正しいですか?"tf get"コマンドラインから最新のものが得られません
tf get .\Web\project.root /recursive
All files are up to date.
tf get /version:T .\Web\project.root /recursive
All files are up to date.
最新のコマンドラインを使用すると、すべてのファイルが最新ではないと報告されます。しかし、Visual Studio内のTFS UIを使用して最新のものを取得すると、最新のコードが実際にダウンロードされます。
解決が得られるまで、私のスーパーファンシーmsbuildスクリプトは、ビジュアルスタジオを開かなければ使用できません。
<Target Name="GetLatestCoreLibraries" Condition="'$(GetLatest)' == 'true'">
<Exec Command='tf get /version:T "$(CoreLibPath)\Source\Libraries /recursive' ContinueOnError="false" />
</Target>
$(CoreLibPath)は、スクリプトに渡される相対パスです。何かのように...
<PropertyGroup>
<CoreLibraryPath>..\..\Core\Release\xx.xx.xx.xx</CoreLibraryPath>
</PropertyGroup
ローカルファイルシステムへの相対パスの使用は、SCSパスを使用する信頼性が低いですか?つまり、$/Core/Release/xx.xx.xx.xx/Source/Libraries "?
私たちは時々Dev Studio UIを使用していることがあります。 TFSのコマンドラインバージョン
itemspecが正しいと仮定すると、構文は正しいです。どのフォルダをUIでクリックして最新のものを入手していますか?あなたは単にCLCのitemspecを使用できますか?たとえば、 '$/.../recursive'を取得します。最悪のケースでは、 'tf get $// recursive'を使って、(サーバ全体ではなく、マップしたものだけで)あなたのワークスペース全体について最新のものを得ることができます。 –
こんにちはエドワード、私はあなたのコメントに基づいて私の質問を更新しました。あなたが推薦しているのは、ソースコントロールのパス名のためにitemspecのローカルパスを削除することだと思います。 – antwarpes
いいえ、ローカルパスを使用することは、サーバーパスよりもあまり信頼性がありません。これはMSBuildスクリプトの一部ですか?あなたはTFS Buildの一部としてそれを呼びますか?あなたのビルド定義のワークスペースマッピングの$(CoreLibPath)は既にありますか? –