シェルフセット内のファイルを表示するときに、ファイルを現在のローカルバージョンと比較するオプションが必要です。残念ながら、使用可能なオプションは、「変更なし」、「ワークスペースあり」(無効になっていない場合はこれが答えになると思います)、「最新あり」のみです。
何か案は?
最大 TFSで2つのシェルフセットを簡単に比較/比較するにはどうすればよいですか?
VS2013 ShelvesetComparer またはVS2012 ShelvesetComparer を使用して、ローカルバージョンを別のシェルフセットにシェルフし、2つのシェルフセットを比較します。
これにより、別の不要なシェルフセットが作成され、ファイル比較エディターでローカルを編集することはできません。
Team Foundation Sidekicksを使用してShelvesetをローカルフォルダーにエクスポートし、ファイル比較ツールを使用してローカルバージョンと比較します。
VS2015アップデート3:
これは理想的な方法ではありませんが、比較ツールによっては、シェルフバージョンをローカルバージョン(ワークスペース)と比較するように指示できる場合があります。私はBeyondCompareを使用しています。これにより、比較するファイルを開くことができます。そのため、シェルフセットから最新と比較してから、「最新」をローカルワークスペースバージョンに置き換えます。
残念ながら、組み込みの比較ツールを確認したところ、このオプションは提供されていません。
Visual Studioで、シェルフバージョンとローカルバージョンを比較することはできないと思いますが、この問題については非常に喜んで修正します。
動作する簡単なハックは次のとおりです。
簡単に言うと、サーバーから取得したシェルフバージョンのコピーを保存し、diffツールを使用して手動で比較するだけです。
TFSで、新しい(一時的な)ワークスペースを作成し、それを新しいローカルフォルダーにマップします。最新バージョンを新しいワークスペースに取得してから、シェルフセットを新しいワークスペースに移動します。これにより、シェルベセットが適用されたソースの一時的なローカルコピーが提供されます。次に、元のワークスペースに戻り、[ファイル] => [ソース管理] => [比較]をクリックします。次に、元のワークスペースと新しい一時ワークスペースのローカルフォルダーパスを入力して、元のローカルバージョンとlcoalsheleveバージョンを比較します。
私はかなり前からこれを行う方法を探していました。これを行うためにvs.netプラグインを作成するのはどれほど難しいのだろうか。
これは少し面倒ですが、それは仕事をします:
ソリューションエクスプローラーで任意のファイルを右クリックし、コンテキストメニューから[保留中の変更を保留解除...]を選択します。
Unshelveダイアログで関連するシェルフセットをダブルクリックします。
比較したいファイルをダブルクリックします。これにより、ファイルのシェルフセットバージョンがメモ帳で開きます。
ファイルをローカルマシンのどこかに保存します。
すべてのダイアログを閉じます。
ソリューションエクスプローラーでファイルのローカルワークスペースバージョンを右クリックし、コンテキストメニューから[比較]を選択します。
ターゲットパスを前に保存したファイルのパスに変更し、[OK]をクリックします。