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

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

Visual Studio 2019 | Visual Studio 2022

Team Foundation バージョン管理 (TFVC) の workspace コマンドを使用すると、ワークスペースに関連付けられているプロパティおよびマッピングを作成、削除、表示、または変更できます。

前提条件

  • 既存のワークスペースを変更または削除するには、所有者であるか、グローバルな [Administer workspaces] (ワークスペースの管理) アクセス許可が [許可] に設定されている必要があります。
  • ワークスペースを作成するには、グローバルな [ワークスペースの作成] アクセス許可が [許可] に設定されている必要があります。
  • 他のユーザーのワークスペースを作成するには、[Administer workspaces] (ワークスペースの管理) アクセス許可が [許可] に設定されている必要があります。

詳細については、「既定の TFVC アクセス許可」を参照してください。

構文

tf workspace /new [/noprompt] [/template:<workspace-name>[;<workspace-owner>]]
[/computer:<computer-name>] [/comment:("<comment>"|@<comment-file>)]
[<workspace-name>[;<workspace-owner>]] [/login:<username>,[<password>]]
[/collection:<team-project-collection-url>] [/permission:(Private|PublicLimited|Public)]
[/location:(local|server)]
tf workspace /delete [/collection:<team-project-collection-url>] <workspace-name>[;<workspace-owner>] [/login:<username>,[<password>]]
tf workspace [/collection:<team-project-collection-url>] [/comment: ("<comment>"|@<comment-file>)] [/newname:<workspace-name>]
[<workspace-name>[;<workspace-owner>]] [/newowner:<owner-name>] [/computer:<computer-name>] [/permission:(Private|PublicLimited|Public)] [/login:<username>,[<password>]]
[/location:(local|server)]

パラメーター

以降のセクションでは、workspace コマンドの引数とオプションについて説明します。

引数

Argument 説明
<workspace-name> 情報を作成、編集、削除、または表示するワークスペースの名前を指定します。
<workspace-owner> ワークスペースのユーザー名を指定します。 このパラメーターは、ワークスペース所有者がこのコマンドの実行者でない場合に必要です。
<computer-name> /computer オプションに値を指定します。
<comment> /comment オプションに値を指定します。
@<comment-file> コメントを読み取るファイルのパスを指定します。
<username> /login オプションに値を指定します。 この値は、DOMAIN\<username> または <username> として指定できます。
<password> /login オプションに値を指定します。
<team-project-collection-url> 情報を作成、編集、削除、または表示するワークスペースを含むプロジェクト コレクションの URL (例: https://myserver:8080/tfs/DefaultCollection)。
<owner-name> /newowner オプションに値を指定します。

Options

オプション 説明
/new 新しいワークスペースを作成します。
/template 新しいワークスペースの作成用のテンプレートとして使用する既存のワークスペースを指定します。 新しいワークスペースでは、既存のワークスペースのマッピングが使用されます。
/delete 指定したワークスペースを削除します。
/computer ワークスペースを作成するコンピューターの名前を指定します。 このオプションは拡張オプションです。
/comment ワークスペースについて説明するコメントを指定します。
/newname 既存のワークスペースの名前を変更します。
/noprompt ダイアログ ボックスを表示せずに、指定したワークスペース コマンドを実行します。
/collection プロジェクト コレクションを指定します。
/permission ワークスペースのアクセス許可のオプションを指定します。
    - Private: 所有者のみが、ワークスペースの使用と管理、ワークスペースへのファイルのチェックインを実行できます。
    - Public Limited: 任意の有効なユーザーが、ワークスペースを使用できます。 ただし、ワークスペースへのファイルのチェックインまたはワークスペースの管理ができるのは、所有者のみです。
    - Public: 任意の有効なユーザーが、ワークスペースの使用と管理、ワークスペースへのファイルのチェックインを実行できます。
/location ワークスペースを作成する場所を指定します。
    - local: クライアント マシン上。 この値は既定値です。
    - server: Azure DevOps サーバー上。
/login Azure DevOps でユーザーを認証するためのユーザー名とパスワードを指定します。
/newowner ワークスペースの新しい所有者のユーザー名を指定します。

解説

ワークスペースは、サーバー上のファイルとフォルダーのローカル コピーに加えて、ローカルで行ったすべての変更です。 バージョン管理されている項目を追加、編集、削除、移動、名前変更、その他の変更を行うと、変更はお使いのワークスペース内で隔離されます。ここで、変更の実行およびテストができます。 チームのコードベースに作業をチェックインするとき、サーバーに変更をコミットします。 ワークスペースの外部にいる他のユーザーがそれらを利用できるようになります。

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

ワークスペースの作成

バージョン管理サーバーにファイルを追加したり、サーバー上の項目をチェックアウトしたりする前に、ワークスペースを作成するか、既存のものを現在のディレクトリに関連付ける必要があります。 詳細については、「開発マシンで Team Foundation バージョン管理を設定する」を参照してください。

現在のディレクトリを、コンピューター上の既存のワークスペースの作業フォルダーにするには、次の手順に従います。

  1. tf workspace <workspace-name>」と入力します。ここで、<workspace-name> は既存のワークスペースの名前です。 [ワークスペースの編集] ダイアログ ボックスが表示されます。
  2. [click here to enter a new working folder] (新しい作業フォルダーを入力するには、ここをクリック) を選びます。
  3. [ソース管理フォルダー] ボックスに、現在のディレクトリをマップするサーバー パスを入力します。
  4. [ローカル フォルダー] ボックスに、現在のディレクトリを入力します。
  5. [OK] を選択します。

新しいワークスペースを作成するときに、/new オプションの一部として "テンプレート ワークスペース" を指定できます。 テンプレート ワークスペースを指定すると、TFVC によって現在のコンピューターに新しいワークスペースが作成されます。 また、TFVC により、所有者が現在の所有者に設定され、ワークスペース プロパティ (mappingscomment) がテンプレート ワークスペースから新しいワークスペースにレプリケートされます。 名前が指定されていない場合は、現在のコンピューター名に基づく名前が使用されます。 テンプレートを使用してワークスペースを作成する場合、それがマップされるファイルは TFVC によってサーバーから取得されません。 get コマンドを使用して、新しいワークスペースをサーバー上の最新バージョンと同期してください。 詳細については、Get コマンドに関する記事を参照してください。

単一フォルダーのマッピング

バージョン管理フォルダーの直接の子のみをローカル ワークスペースにマップすることを選択できます。 これを行うには、[ワークスペースの追加] ダイアログ ボックスの [ソース管理フォルダー] ボックスにアスタリスク (*) ワイルドカード文字を追加します (例: $/folder/*)。 そうしないと、既定では、バージョン管理フォルダーのすべての子がローカル ワークスペースに再帰的にマップされます。

バージョン管理階層内の単一フォルダー マッピングは、クライアント コンピューターにダウンロードされる項目の数を制限するので便利です。 ダウンロードされるファイルを制限するもう 1 つの方法は、ワークスペースに保持する必要がないファイルをクロークすることです。 詳細については、「ワークスペースの最適化」を参照してください。 この方法により、ダウンロード時間が短縮され、クライアント コンピューターのディスク領域が節約されます。

ワークスペースを削除する

保留中の変更を含むワークスペースを削除すると、TFVC により、削除プロセスの一環として保留中の変更が取り消されます。 ワークスペースを削除しても、そのワークスペースに存在していた、クライアント コンピューター上のファイルとフォルダーは削除されません。

注意

手動で実行するコマンドでは、ユーザー確認をバイパスする /noprompt オプションが必要です。 PowerShell の Start() メソッドを使用してコマンドを実行する場合は注意してください。 /noprompt オプションは、PowerShell では自動的に設定される可能性があります。

ワークスペースを削除する場合は、<workspace-owner><workspace-name> を指定する必要があります

この workspace コマンドを使用して、これらの値を取得できます。 詳細については、ワークスペース コマンドに関する記事を参照してください。 <workspace-owner> 値を見つけるには、次のコマンドを実行します。

c:\projects>tf workspaces /computer:* /owner:* /collection:`<team-project-collection-url>` /format:xml

<workspace-name> 値を見つけるには、前のコマンドの出力の <OwnerId> 値を <workspace-owner> 値として使用します。 この値の形式では、Azure Active Directory (Azure AD) オブジェクト ID の後にバックスラッシュとユーザー プリンシパル名が続きます。 値全体を使用します。 次に、次のコマンドを実行します。

c:\projects>tf workspaces /owner:<workspace-owner> /computer:* /collection:`<team-project-collection-url>`

ワークスペースを削除するには、次のコマンドを実行します。

c:\projects>tf workspace /delete <workspace-name>;<workspace-owner> /collection:<team-project-collection-url>`

ワークスペースを編集する

次のワークスペース属性を変更できます。

  • ワークスペース名
  • 解説
  • 作業フォルダーのマッピング

ワークスペースの仕様が指定されていない場合は、現在のフォルダーのワークスペースが使用されます。

次の例では、[ワークスペースの追加] ダイアログ ボックスを開き、新しいワークスペースを作成します。 [ワークスペースの追加] ダイアログ ボックスを使用して、ソース管理フォルダー、所有者、コンピューター、コメント、ローカル フォルダーを編集できます。

c:\projects>tf workspace /new /collection:https://myserver:8080/tfs/DefaultCollection

次の例では、Beta1 という新しいワークスペースを作成し、ワークスペース所有者として jenh を割り当てます。 新しいワークスペースの所有権を別のユーザーに割り当てるには、AdminWorkspaces アクセス許可が付与されている必要があります。 セキュリティ アクセス許可の詳細については、「既定の TFVC アクセス許可」を参照してください。

c:\projects>tf workspace /new Beta1;jenh

次の例では、jenh が所有する Beta1 ワークスペースをテンプレートとして使用して、新しいワークスペースを作成します。

c:\projects>tf workspace /new /template:Beta1;jenh /collection:https://myserver:8080/tfs/DefaultCollection

次の例では、サーバーから Beta1 ワークスペースを削除します。

c:\projects>tf workspace /delete Beta1

次の例では、現在のワークスペースのプロパティを編集します。

c:\projects>tf workspace

次の例では、jenh が所有する Beta1 ワークスペースを開きます。これにより、そのプロパティとマッピングを確認できます。 AdminWorkspaces アクセス許可を持っている場合は、ワークスペースのプロパティとマッピングを変更できます。

c:\projects> tf workspaces Beta1;jenh