Label コマンド (Team Foundation バージョン管理)
更新 : 2007 年 11 月
Team Foundation バージョン管理サーバーのファイルまたはフォルダのバージョンにラベルを付加したり、バージョンからラベルを削除したりします。
必要なアクセス許可
label コマンドを使用するには、[ラベル] のアクセス許可が [許可] に設定されている必要があります。他のユーザーが作成したラベルを変更または削除するには、[ラベルの管理] のアクセス許可が [許可] に設定されている必要があります。詳細については、「Team Foundation Server のアクセス許可」を参照してください。
tf label [/server:servername] labelname[@scope] [/owner:ownername]
itemspec [/version:versionspec] [/comment:("comment"|@commentfile)]
[/child:(replace|merge)] [/recursive]
tf label [/server:servername] /delete labelname[@scope]
[/owner:ownername] itemspec [/version:versionspec]
パラメータ
引数 |
説明 |
---|---|
servername |
/server オプションにユーザーが指定した値。例: teamfoundation2。 |
labelname |
指定された項目に結びつけるか、それから削除するか、または変更するラベルの名前を指定します。 |
@scope |
Team Foundation バージョン管理サーバー ディレクトリを指定します。labelname はそのディレクトリ内で一意です。このパラメータを使用すると、Team Foundation バージョン管理サーバー内の別々の部分に同じ名前のラベルが 2 つ存在する場合に、1 つのラベル、またはラベルが付けられた項目のセットを、別個に作成、管理、取得、および削除できます。 |
ownername |
/owner オプションに、DOMAIN\JuanGo または単に juango などの値を指定します。 |
itemspec |
ラベルを付けるか、付け直すか、または変更するファイルまたはフォルダを指定します。Team Foundation で itemspecs を解析してスコープ内にある項目を確認する方法の詳細については、「コマンド ライン構文 (Team System)」を参照してください。 |
versionspec |
/version オプションに、c2 などの値を指定します。Team Foundation でバージョン仕様を解析してそのスコープ内にある項目を確認する方法の詳細については、「コマンド ライン構文 (Team System)」を参照してください。 |
comment |
ラベルについてユーザーが指定したコメント。 |
@commentfile |
チェックインに使用するコメントを含むディスク上のファイルへの、ユーザー指定のパス。 |
オプション |
説明 |
---|---|
/server |
Team Foundation Server を識別します。ワークスペースに割り当てられていないディレクトリからコマンドを呼び出す場合は、このオプションを指定する必要があります。 |
/owner |
ラベルを所有しているユーザーの名前を指定します。 |
/version |
ラベルを結びつけるか、変更するか、削除するファイルまたはフォルダのバージョンを指定します (省略可能)。これらは、C93 などの変更セット値です。versionspec が指定されていない場合、Team Foundation は既定で基本ワークスペース バージョンを使用します。 |
/comment |
ラベルの説明またはコメントを追加または変更します。 |
/child |
指定されたラベルと同じ既存のラベルを持つ項目の処理方法を指定します。既存のラベルに対応する項目のバージョンを更新するには、Replace を使用します。既存のラベルを持つ項目をそのまま残すには、Merge を使用します。 |
/recursive |
itemspec および versionspec と一致するディレクトリ内のすべての項目にラベルを付けます。 /delete オプションと一緒に使うことはできません。 |
/delete |
ラベルを削除します。 |
解説
ラベルは、Team Foundation バージョン管理サーバーにある関連のないファイルおよびフォルダのセットに追加できるマーカーです。ラベルを使用すると、開発またはビルドのためにファイルやフォルダをワークスペースに簡単に取り込むことができます。このため、ラベルは、変更セットまたは日付/時刻に類似しており、含まれるファイルおよびフォルダを任意で追加および削除したり、その中の項目のバージョンを変更したりできます。ラベルは、次の Team Foundation コマンドに渡すことができるバージョン仕様です。
一般的な種類のラベルは、"M1"、"Beta2"、"Release Candidate 0" のようなマイルストーン ラベルです。
ラベルは、バージョンに固有です。つまり、ラベルはファイルまたはフォルダの 1 つのバージョンにだけ割り当てることができます。項目の各バージョンは複数のラベルをサポートできます。
ラベルは、バージョンが指定されるオブジェクトではないので、ファイルのラベル履歴はトラッキングされません。また、ラベル操作によってワークスペースに保留中の変更が作成されることはありません。label コマンドを実行すると、更新が Team Foundation バージョン管理サーバーに即座に反映されます。
tf コマンド ライン ユーティリティの使い方の詳細については、「Tf コマンド ライン ユーティリティのコマンド」を参照してください。
ラベルの結合解除および削除
ファイルまたはフォルダからラベルを削除するには、Unlabel コマンドを使用します。または、tf label /delete コマンドを使用して、システムからラベルを削除できます。
ラベルが結びつけられている項目、そのコメント、スコープ、および所有者のリストを含む既存のラベルについては、「Labels コマンド」を参照してください。
オーバーロードされたラベルの管理
ラベルの名前は、指定された scope 内で一意であることが必要です。ラベルを追加する場合は、指定された、または暗黙の scope 内で、またはその下でそのラベル名の使用を予約します。@scope パラメータの既定値はチーム プロジェクトです。例: $/TeamProject1。
別のチームまたはユーザーが、"M3" のような共通ラベルを、Team Foundation バージョン管理サーバーの別の部分にあるバージョン管理されたファイルのセットに追加する場合は、ルート プロジェクト フォルダが別のディレクトリにある限り、M3 ラベルを、自分のプロジェクト内のバージョン管理されたファイルに適用できます。たとえば、$/math ディレクトリに "M3" ラベルが付けられている場合は、$/projects ディレクトリ内のファイルに "M3" を適用できます。
ラベルの取得や削除、または M3 のラベルが付けられた項目に対するその他の管理を行うには、@scope パラメータを指定して、Team Foundation に対して、操作する M3 ラベルを通知する必要があります。
Team Foundation バージョン管理サーバーのルート ($/) にラベルを作成するか、特定のフォルダのラベル アクセス許可を調整することによって、Team Foundation バージョン管理 サーバーの別の部分にある "M3" のようなラベルを、他のユーザーが "オーバーロード" するのを防止できます。
/child オプションの使用によるラベルのトラブルの防止
label コマンドを、既存のラベル名、および同じラベルで既にマークされているファイルを含む itemspec を指定して実行した場合は、/child オプションの値によって、マークされているファイルが新しいリビジョン情報で更新されるかどうかが決まります。つまり、ファイルには同じ名前でラベルが付けられますが、スコープは異なります。
たとえば、2 つのファイル 314.cs および 271.cs を含む c:\projects という名前のフォルダがあるとします。また、314.cs のバージョン C70 にラベル "ready" が付けられているとします。314.cs の最新バージョンは C93 です。ラベル "ready" をフォルダおよびそこに含まれるファイルの最新バージョンに適用する場合、次のコマンドを使用します。"ready" ラベルは 314.cs;C70 から 314.cs;C93 へ移動されます。
tf label ready c:\projects /recursive /version:T /child:Replace
一方、既存のラベル "ready" を 314.cs のバージョン C70 からバージョン C93 に移動しない場合は、次の構文を使用します。
tf label ready c:\projects /recursive /version:T /child:Merge
/child オプションの値として Merge を指定した場合は、該当するラベルの既存のインスタンスがそのまま残されます。
メモ : |
---|
上記の 2 つの例では、"Tip" を表す T が versionspec の最新バージョンを取得するために使用されています。 |
例
次の例は、"docs" フォルダのワークスペース バージョンおよびそこに格納されているファイルやフォルダに "goodbuild" ラベルを結びつけます。
c:\projects>tf label goodbuild docs /recursive
次の例は、"goodbuild" ラベルを "docs" フォルダに結びつけますが、docs フォルダに格納されているファイルやフォルダには結びつけません。
c:\projects>tf label goodbuild docs
次の例は、Team Foundation バージョン管理サーバー内の 314.cs のバージョン 3 に "goodbuild" ラベルを結びつけます。
c:\projects>tf label goodbuild /version:3 $/src/314.cs
次の例は、Team Foundation バージョン管理サーバー内のすべての項目から "badbuild" ラベルを削除します。
c:\projects>tf label /delete badbuild
次の例は、スコープのオプションを使用して、ラベルを 314.cs に適用します。
c:\projects>tf label goodbuild@$/TeamProject1 314.cs