Lock コマンド

項目をチェックアウトして別のワークスペースで編集するためのユーザー権利、または別のワークスペースから保留中の変更を項目にチェックインするためのユーザー権利を拒否および復元するためにファイルまたはフォルダーをロックまたはアンロックします。

必要なアクセス許可

lock コマンドを使用するには、[ロック] のアクセス許可が [許可] に設定されている必要があります。 別のユーザーが設定したロックを解除する必要があるが、そのユーザーのワークスペースに対する [書き込み] のアクセス許可がない場合は、[他のユーザーの変更のロック解除] のアクセス許可が [許可] に設定されている必要があります。 詳細については、「Team Foundation Server のアクセス許可」を参照してください。

tf lock itemspec /lock:(none|checkout|checkin) 
[/workspace:workspacename] [/recursive] [/login:username,[password]] [/collection:TeamProjectCollectionUrl] 

パラメーター

引数

説明

itemspec

ロックまたはアンロックするファイルまたはフォルダーを指定します。 Team Foundation で itemspecs を解析してスコープ内にある項目を確認する方法の詳細については、「コマンド ライン オプション」を参照してください。

メモメモ
複数の Itemspec 引数を指定できます。

workspacename

/workspace オプションにユーザーが指定した値。

username

/login オプションに値を指定します。 ユーザー名の値は、DOMAIN\UserName または UserName のいずれかとして指定できます。

TeamProjectCollectionUrl

ロックまたはロック解除するファイルまたはフォルダーを含むチーム プロジェクト コレクションの URL (http://myserver:8080/tfs/DefaultCollection など)。

オプション

説明

/lock

ロックの種類を指定するか、項目からロックを削除します。 詳細については、「ロックの種類について」を参照してください。

ロック オプション:

  • None

    項目からロックを削除します。

  • Checkin

    項目をすべてのワークスペースにチェックアウトして編集できるようにします。ただし、明示的にチェックイン ロックが解放されるまで、指定された /workspace 外の項目の変更はチェックインできないようにします。 指定された項目が他のワークスペースでロックされている場合、ロック操作は失敗します。

  • チェックアウト

    ロックが明示的に解放されるまで、指定した項目をチェックインまたはチェックアウトできないようにします。 指定したいずれかの項目がロックされている場合、またはいずれかの項目に保留中の変更がある場合、ロック操作は失敗します。

/workspace

ロックを適用する別のワークスペースの名前を指定します。 ロックは、既定で、現在使用しているワークスペースに適用されます。

/login

Visual Studio Team Foundation Server でユーザーを認証するためのユーザー名とパスワードを指定します。

/collection

チーム プロジェクト コレクションを指定します。

解説

ロック コマンドを使用すると、項目の Team Foundation バージョン管理 サーバー バージョンを一時的に固定できるので、保留中の変更をチェックインする際にマージの競合を解決する必要がありません。 Team Foundation バージョン管理 サーバーの項目へのアクセスを永続的に禁止する場合は、代わりに Permission コマンドを使用します。

注意

項目をロックするときは、チーム メンバーにロックする理由およびロックを削除する時期を説明する通知を送信します。

tf コマンド ライン ユーティリティの使い方の詳細については、「Tf コマンド ライン ユーティリティのコマンド」を参照してください。

項目をロックする方法

項目をロックするには、ロック コマンドを使用するか、または次のような tf コマンド ライン ユーティリティの他のコマンドの実行中にロック オプションを指定します。

Add と Branch コマンドでは、ロックは新しい項目が作成される名前空間に適用されます。 Rename コマンドと共に使用するロックは、古い名前空間と新しい名前空間の両方に適用されます。 詳細については、「フォルダーまたはファイルのロックおよびロックの解除」を参照してください。

ロックの種類

Team Foundation には、checkincheckout の 2 種類のロックがあります。

チェックイン ロックは、チェックアウト ロックほど制限が強力ではありません。 チェックイン ロックを適用すると、ユーザーは引き続き他のワークスペースで項目をローカルに変更できます。 変更は、ワークスペースからチェックイン ロックが明示的に削除されるまでチェックインできません。

チェックアウト ロックは、チェックイン ロックより制限が強力です。 チェックアウト ロックをバージョン管理されたファイルまたはフォルダーに適用すると、ユーザーはファイルをチェックアウトして編集することも、既存の保留中の変更をチェックインすることもできません。 項目に対する保留中の変更がある場合、チェックアウト ロックを適用することはできません。

チェックイン ロックとチェックアウト ロックを適用する時期の詳細については、「ロックの種類について」を参照してください。

ロックの動作

チェックアウトされているファイルをロックする場合、状態は新しいロックの種類を追加して変更されます。 ファイルがチェックアウトされていない場合、"ロック" の変更はワークスペースの保留中の変更セットに追加されます。 lock コマンドでは、checkout コマンドと異なり、ファイルは自動的に編集可能になりません。

フォルダーのロックは暗黙的に再帰的です。 フォルダーをロックする場合、ファイルに制限が強いチェックアウト ロックを適用する場合を除いて、チェックイン ロックが適用されているフォルダーに含まれるファイルをロックする必要はありません。

項目のロックの解除

ロックされた項目は、none オプションを使用してロックを解除できます。 さらに、Team Foundation では、ワークスペースで保留中の変更をチェックインすると、項目は自動的にアンロックされます。

Status コマンドを使用すると、Team Foundation バージョン管理 サーバーでロックされているファイル、およびロックしたユーザーを確認できます。

次の例は、他のユーザーが 314.cs をチェックアウトできないようにします。

c:\projects>tf lock /lock:checkout 314.cs

次の例は、他のユーザーが 1256.cs への変更をチェックインできないようにし、各自のワークスペースへのチェックアウトはできるようにします。

c:\projects>tf lock /lock:checkin 1256.cs

次の例は、他のユーザーが Team Foundation バージョン管理 サーバーの src/ フォルダーのすべての項目に対する変更を保留できないようにします。

c:\projects>tf lock /lock:checkout $/src

次の例は、Team Foundation バージョン管理 サーバーの src/ フォルダーのすべてのファイルのロックを解除して、他のユーザーがチェックアウトおよびチェックインできるようにします。

c:\projects>tf lock /lock:none src/

参照

参照

コマンド ライン構文 (バージョン管理)

Checkout コマンドと Edit コマンド

Status コマンド

概念

ロックの種類について

ワークスペースの作成とチーム プロジェクトの操作

その他の技術情報

Tf コマンド ライン ユーティリティのコマンド

バージョン管理のロック操作