Visual Studio for Mac は Team Foundation バージョン管理をサポートしていますか?Does Visual Studio for Mac support Team Foundation Version Control?

Caution

Visual Studio for Mac の TFVC 拡張機能のプレビューは Visual Studio 2019 for Mac ではサポートされなくなります。The preview TFVC extension for Visual Studio for Mac is no longer supported in Visual Studio 2019 for Mac.

Visual Studio for Mac の代替バージョン コントロール オプションAlternative Version Control options in Visual Studio for Mac

macOS 上での最善のバージョン コントロール エクスペリエンスのためには、Team Foundation バージョン管理 (TFVC) ではなく Git を使用することをお勧めします。For the best version control experience on macOS, we recommend using Git instead of Team Foundation Version Control (TFVC).

Visual Studio for Mac では Git がサポートされており、Team Foundation Server (TFS)/Azure DevOps にホストされているリポジトリでの既定のオプションです。Git is supported in Visual Studio for Mac and is the default option for repositories hosted in Team Foundation Server (TFS)/Azure DevOps. TFS/Azure DevOps での Git の使用の詳細については、「Setting up a Git Repository」(Git リポジトリのセットアップ) のガイドをご覧ください。To learn more about using Git with TFS/Azure DevOps, see the Setting up a Git Repository guide.

TFVC でサポートされていない回避策Unsupported workarounds for TFVC

Visual Studio for Mac は TFVC を正式にサポートしていませんが、このガイドの残りの部分では、macOS で TFVC を使用するための回避策について説明します。While Visual Studio for Mac doesn't officially support TFVC, the rest of this guide provides some workarounds to work with TFVC on macOS. 現在、バージョン管理に TFVC を使用している場合は、TFVC にホストされているソース コードにアクセスするために、いくつかのソリューションを使用できます。If you're using TFVC for version control today, here are some solutions you can use to access your source code hosted in TFVC:

方法 1.Option 1. Visual Studio Code と Azure Repos 拡張機能を使用するUse Visual Studio Code and the Azure Repos extension

グラフィカル インターフェイスを操作してバージョン管理内のファイルを管理する場合、Visual Studio Code 対応の Azure Repos 拡張機能では、Microsoft からサポートされているソリューションを提供しています。If you like to work with a graphical interface to manage your files in version control, then the Azure Repos extension for Visual Studio Code provides a supported solution from Microsoft. 使用を開始するには、Visual Studio Code をダウンロードして、Azure Repos 拡張機能を構成する方法を確認します。To get started, download Visual Studio Code and then learn how to configure the Azure Repos extension.

方法 2.Option 2. Team Explorer Everywhere Command Line Client を使用して接続するConnecting using the Team Explorer Everywhere Command Line Client

Important

Team Explorer Everywhere の README にあるように、このプロジェクトは管理されなくなりましたAs per the Team Explorer Everywhere README, this project is no longer being maintained.

macOS ターミナルを快適に使用している場合、Team Explorer Everywhere Command Line Client (TEE-CLC) では、TFVC 内のソースに接続するためのサポートされた方法を提供しています。If you're comfortable using the macOS Terminal, then the Team Explorer Everywhere Command Line Client (TEE-CLC) provides a supported way to connect to your source in TFVC.

以下の手順に従って、TFVC への接続を設定し変更をコミットできます。You can follow the steps below to set up your connection to TFVC and commit changes.

TEE-CLC のセットアップSetting up the TEE-CLC

TEE CLC のセットアップを行うには、2 つの方法があります。There are two ways to get setup with the TEE-CLC.

  • Homebrew を使用してクライアントをインストールするUse Homebrew to install the client, or
  • クライアントをダウンロードして手動でインストールするDownload and manually install the client

最も簡単なソリューションは、macOS 用のパッケージ マネージャーである HomeBrew を使用することです。The easiest solution is using HomeBrew, which is a package manager for macOS. この方法を使用してインストールするには、次の手順を実行します。To install using this method:

  1. macOS ターミナルのアプリケーションを起動します。Launch the macOS Terminal application.
  2. ターミナルと Homebrew ホーム ページ上の手順を使用して、Homebrew をインストールします。Install Homebrew using the Terminal and the instructions on the Homebrew home page.
  3. Homebrew がインストールされたら、ご利用のターミナルから次のコマンドを実行します。brew install tee-clcOnce Homebrew is installed, run the following command from your Terminal: brew install tee-clc

TEE-CLC を手動でセットアップするには:To setup the TEE-CLC manually:

  1. Team Explorer Everywhere GitHub リポジトリのリリース ページから の最新バージョンをダウンロードします (例えば、この記事の執筆時点では tee-clc-14.134.0.zip)。Download the latest version of the tee-clc from the releases page of the Team Explorer Everywhere GitHub repo (e.g. tee-clc-14.134.0.zip at the time of this writing).
  2. .zip の内容をディスク上のフォルダーに抽出します。Extract the content of the .zip to a folder on disk.
  3. macOS ターミナルのアプリを開き、cd コマンドを使用して前の手順で使用したフォルダーに切り替えます。Open the macOS Terminal app and use the cd command to switch to the folder you used in the previous step.
  4. フォルダー内から、コマンド ./tf を実行して、コマンド ライン クライアントが実行できることをテストします。Java またはその他の依存関係のインストールを求められる場合があります。From within the folder, run the command ./tf to test that the command line client can run, you may be prompted to install Java or other dependencies.

TEE-CLC がインストールされたら、コマンド tf eula を実行して、クライアント用のライセンス契約を表示して同意します。Once the TEE-CLC is installed, you can run the command tf eula to view and accept the license agreement for the client.

最後に、お使いの TFS/Azure DevOps 環境による認証を行うために、サーバー上に個人用アクセス トークンを作成する必要があります。Finally, to authenticate with your TFS/Azure DevOps environment, you'll need to create a personal access token on the server. 詳しくは、「Authenticating with personal access tokens (個人用アクセス トークンによる認証)」をご覧ください。Learn more about authenticating with personal access tokens. TFVC によって使用される個人用アクセス トークンを作成する場合は、トークンの構成時に必ずフル アクセスを指定してください。When creating a personal access token to use with TFVC, be sure to provide Full Access when configuring the token.

TEE CLC を使用してリポジトリに接続するUsing the TEE-CLC to connect to your repo

ソース コードに接続するには、最初に、tf workspace コマンドを使用してワークスペースを作成する必要があります。To connect to your source code, you first need to create a workspace using the tf workspace command. たとえば、次のコマンドでは、Azure DevOps Services にある "MyOrganization" という組織に接続します。For example, the following commands connect to an Organization in Azure DevOps Services called "MyOrganization":

export TF_AUTO_SAVE_CREDENTIALS=1
tf workspace -new MyWorkspace -collection:https://dev.azure.com/MyOrganization

TF_AUTO_SAVE_CREDENTIALS 環境設定は、入力を複数回求められることがないように、資格情報を保存するために使用されます。The TF_AUTO_SAVE_CREDENTIALS environment setting is used to save your credentials so you aren't prompted to enter them multiple times. ユーザー名の入力を求められたら、前のセクションで作成した個人用アクセス トークンを使用し、空白のパスワードを使用します。When prompted for a user name, use the personal access token you created in the previous section and use a blank password.

ローカル フォルダーへのソース ファイルのマッピングを作成するには、tf workfold コマンドを使用します。To create a mapping of your source files to a local folder, you'll use the tf workfold command. 次の例では、"MyRepository" TFVC プロジェクトから "WebApp.Services" というフォルダーをマップし、local ~/Projects/ フォルダー (つまり、現在のユーザーのホーム フォルダーにある "Projects" フォルダー) にコピーされるように設定します。The following example will map a folder named "WebApp.Services" from the "MyRepository" TFVC project and set it up to be copied into the local ~/Projects/ folder (i.e. a "Projects" folder in the current users's home folder).

tf workfold -map $/MyRepository/WebApp.Services -workspace:MyWorkspace ~/Projects/

最後に、次のコマンドを使用してサーバーからソース ファイルを取得し、ローカルにコピーします。Finally, you use the following command to get the source files from the server and copy them locally:

tf get

TEE CLC を使用して変更をコミットするCommitting changes using the TEE-CLC

Visual Studio for Mac 内のファイルに変更を加えた後は、ターミナルに戻って編集内容をチェックインできます。After you've made changes to your files in Visual Studio for Mac, you can switch back to the Terminal to check in your edits. tf add コマンドは、チェックインされる保留中の変更一覧にファイルを追加するために使用され、tf checkin コマンドはサーバーへの実際のチェックインを実行します。The tf add command is used to add files to the list of pending changes to be checked-in and the tf checkin command performs the actual check-in to the server. checkin コマンドには、コメントを追加したり、関連する作業項目を結び付けたりするためのパラメーターが含まれます。The checkin command includes parameters to add a comment or associate a related work item. 次のコード スニペットでは、WebApp.Services フォルダーにあるすべてのファイルが、再帰的にチェックインに追加されます。In the following code snippet, all files in a WebApp.Services folder are added, recursively, to the checkin. 次に、コードはコメントと共にチェックインされ、ID "42" の作業項目と結び付けられます。Then, the code is checked in with a comment and associated with a work item with the ID "42".

cd WebApp.Services
tf add * /recursive
tf checkin -comment:"Replaced 'Northwand' typos with the correct word Northwind" -associate:42

ここで説明したコマンドなどについて詳細を確認するには、ターミナルから次のコマンドを使用できます。To learn more about the commands mentioned here, or others, you can use the following command from the Terminal:

tf help

関連項目See also