3

数日前に追加されたシェルフセットを棚から外したかっただけです。一方、他の誰かが、シェルブセットに含まれるファイルの新しいバージョンのチェックインに成功しました。最新バージョンとシェルブセットの間でファイルに競合が存在するため (別のベースチェンジセットがあるため)、コードベースをシェルブセットで使用されるこの特定のバージョンに戻したいと考えています。

どのベース バージョンのシェルフセットが使用されているかを判断するにはどうすればよいですか? 残念ながら、「詳細」-シェルフセットの情報には、これに関する情報はありません。

4

2 に答える 2

6

棚上げされた変更のバージョンは、シェルブセットの詳細ダイアログで確認できます。ファイルを右クリックすると、「プロパティ」を選択すると、棚上げされたバージョンと最新バージョンが表示されます。

ただし、unshelve は最新バージョンに対して新しい変更を保留しません。代わりに、保留されたバージョンに対してチェックアウトします。次のシナリオを想像してください。

$/Aバージョン 5に対する変更を保留します。シェルブセットを作成しfoo、ローカルの保留中の変更を元に戻します。

別のユーザーが の新しいバージョンをチェックインします$/A。最新のものを取得すると、$/Aバージョン 6 に更新されます。

その後 unshelve する場合foo、保留中の保留中の変更はバージョン 5 だったので、バージョン 5 で保留中の変更が存在することになります。バージョン6まで。

于 2012-02-01T15:19:35.827 に答える
0

それは不可能だと思います。
TFS-SDK aShelvesetを使用して取得しVersionControlServer.QueryShelvesetsたとしても、その方向には何もありません。

シェルベセットには複数のブランチ、フォルダ、さらにはチームプロジェクトからのアイテムが含まれている可能性があるため、これは実際には理にかなっています。したがって、チェンジセットとチェンジセットの間に常に「1対1」の関係があるとは限りません。

あなたの代わりに、私はコメントに情報を追加するだけです(手で:醜いですが、それはうまくいくでしょう)

于 2012-02-01T15:26:07.560 に答える