次の方法で共有


Shelve コマンド (Team Foundation バージョン管理)

Azure DevOps Services の |Azure DevOps Server 2022 - Azure DevOps Server 2019

Visual Studio 2019 |Visual Studio 2022

Team Foundation Version Control (TFVC) shelve コマンドは、保留中の変更のセットと、保留中のチェックイン ノート、コメント、および Azure DevOps サーバー上の関連する作業項目の一覧を実際にチェックインせずに格納します。

前提 条件

コマンドを使用してシェルブセットを削除する場合、シェルブセットの所有者になる場合、またはシェルブされた変更を管理する アクセス許可を [を許可] 設定する必要があります。 詳細については、「既定の TFVC アクセス許可 」を参照してください。

構文

tf shelve  [/replace] [/comment:("comment"|@commentfile)] [shelvesetname] [/validate][/noprompt] [/login:username,[password]]
tf shelve [/move] [/replace] [/comment:("comment"|@commentfile)] 
[/recursive] [shelvesetname] itemspec [/validate] [/noprompt] [/login:username,[password]]
tf shelve /delete shelvesetname[;owner] [/login:username,[password]] [/collection:TeamProjectCollectionUrl]

パラメーター

引数

引数の 説明
<commentfile> シェルブセットのコメントを読み取るファイルのファイル システム パスを指定します。
<comment> シェルブセットのコメントを指定します。
<itemspec> シェルブするファイルまたはフォルダーを識別します。 既定では、このパラメーターが指定されていない場合、現在のワークスペースのすべての保留中の変更がシェルブされます。 Team Foundation が itemspec を解析してスコープ内にある項目を特定する方法の詳細については、「オプションを使用してコマンドがする方法を変更する」を参照してください。
<shelvesetname> Azure DevOps サーバーからシェルブセットを取得できる名前を指定します。 shelvesetnameownerの既存の組み合わせを指定できますが、/replace も指定されている場合に限られます。

このパラメーターの値を指定する必要があります。
<owner> シェルブセットの現在または意図された所有者をユーザー名で識別します。 既定では、シェルブセットが指定されていない場合、現在のユーザーにはシェルブセットの所有権が割り当てられます。
<username> /login オプションに値を提供します。 ユーザー名の値は、DOMAIN\username または usernameとして指定できます。
<TeamProjectCollectionUrl> シェルブするファイルまたはフォルダーを含むプロジェクト コレクションの URL (http://myserver:8080/tfs/DefaultCollection/など)。

オプション

オプションの 説明
/new [Visual Studio チェックイン] ダイアログ ボックスに示すように、保留中の各変更の選択された状態、コメント、関連する作業項目、チェックイン ノート、チェックイン ポリシーのオーバーライド理由は、チェックインするまで保留中の変更として開発マシンに保存されます。 /new オプションを選択すると、チェックイン前にこのチェックイン メタデータがクリアされます。
/move シェルブ操作が成功した後、ワークスペースから保留中の変更を削除します。
/replace 既存のシェルブセットを、指定した名前と所有者に置き換えます。
/delete 指定したシェルブセットを削除します。 このオプションと組み合わせることができるのは、/server オプションのみです。 /noprompt オプションを含めない場合は、/delete オプションを指定すると確認メッセージが表示されます。
/comment シェルブされた変更を説明する指定されたコメントを追加します。
/recursive 指定したシェルブセット フォルダー内のすべてのアイテム、そのサブフォルダー、および指定した itemspec がフォルダーである場合は、その中のすべてのアイテムを棚に入れる。
/noprompt ユーザーからの入力を求めるメッセージが表示されないようにします。
/validate このオプションを選択すると、開いたときに [Shelve - Source Files] ダイアログ ボックスの [ポリシーとチェックイン ノートの を棚付けする前に ] チェック ボックスがオンになります。 検証チェック ボックスがオンの場合、ダイアログはチェックイン ポリシーを評価し、チェックイン ノートが入力されていることを確認します。 このオプションは、他のユーザーによるレビューとチェックインのために変更が渡される場合に便利です。 /nopromptと組み合わせた場合は無効です。
/login Azure DevOps Server でユーザーを認証するためのユーザー名とパスワードを指定します。
/collection プロジェクト コレクションを指定します。

備考

tf コマンド ライン ユーティリティの shelve コマンドは、保留中の変更、関連する作業項目の一覧、進行中のチェックイン ノート、および Azure DevOps サーバー上のシェルブセット内のコメントをバックアップします。 シェルブセット は、サーバーにコミットされていない変更セットに似ています。 変更セットと同様に、十分なアクセス許可を持つ任意のユーザーが、サーバーからローカル ワークスペースにシェルブセットを取得できます。

シェルビングは、十分にテストされていない保留中の変更をチェックインする代わりに使用できます。 作業を中断する場合は、シェルブを使用して次の操作を行います。

  • バージョン 管理サーバーへの変更をチェックインせずに、ローカル作業ファイルのセットを別の開発者またはテスト担当者と共有します。

  • 保留中の変更のグループをチェックインせずに一時的に確保して、優先順位の高い問題に取り組むことができます。 優先度の高いタスクの作業を完了したら、Unshelve コマンドを使用して、シェルブされた変更を復元できます。

オプションを含める場合、 コマンドは、各シェルブされたファイルリビジョンを、サーバーから現在のワークスペースに取得した最後のバージョン 基本ワークスペース バージョンにロールバックします。 具体的には、シェルブするすべての項目に対して、/move オプション:

  • Undo を使用して、シェルブされた変更を元に戻します。 追加が保留中だったファイルは、ワークスペースから削除されます。

  • 保留中のエディションが存在するすべてのファイルの基本ワークスペース バージョンをサーバーから現在のワークスペースに取得します。

  • 現在のワークスペース内のすべての項目を読み取り専用でマークします。

/delete オプションを含める場合、TFVC は指定されたシェルブセットを Azure DevOps サーバーから完全に削除します。

tf コマンドライン ユーティリティの使用方法の詳細については、「Team Foundation バージョン管理コマンドを使用する」を参照してください。

次の例では、Reflector_BuddyTestという名前の Azure DevOps サーバーに新しいシェルブセットを作成し、ユーザー Patに所有権を割り当て、現在のワークスペース内のすべての項目を最後の get 操作中にダウンロードされた最新バージョンに返し、読み取り専用の状態を設定します。

c:\projects> tf shelve Reflector_BuddyTest;Pat /move

次の例では、サーバーから既存のシェルブセット new-feature を削除し、その名前で新しいシェルブセットを作成し、現在のワークスペースのすべての保留中の変更を保持します。

c:\projects> tf shelve new-feature /replace

次の例では、C:\projects 作業フォルダーとそのサブフォルダー内のすべての .cs ファイルに対するすべての保留中の変更を含む、HelloWorld_TestMe という名前のシェルブセットを作成します。

c:\projects> tf shelve HelloWorld_TestMe c:\projects\*.cs /recursive

次の例では、HelloWorld_24 シェルブセットを削除します。

c:\projects> tf shelve HelloWorld_24 /delete