Visual Studio for Mac 是否支持 Team Foundation 版本控制?

适用于: 是Visual Studio for Mac 否Visual Studio

注意

Visual Studio for Mac 的 TFVC 扩展的预览版本在 Visual Studio 2019 for Mac 中已不再受支持。

Visual Studio for Mac 中的备用版本控制选项

为了在 macOS 上获得最佳版本控制体验,建议使用 Git 而不是 Team Foundation 版本控制 (TFVC)。

Git 在 Visual Studio for Mac 中受支持,并且是托管在 Team Foundation Server (TFS)/Azure DevOps 中的存储库的默认选项。 要了解有关在 TFS/Azure DevOps 中使用 Git 的详细信息,请参阅设置 Git 存储库指南。

TFVC 不受支持的解决方法

虽然 Visual Studio for Mac 并未正式支持 TFVC,但本指南的其余部分提供了一些在 macOS 上使用 TFVC 的解决方法。 如果目前使用 TFVC 进行版本控制,可使用以下解决方案访问托管在 TFVC 中的源代码:

选项 1. 使用 Visual Studio Code 和 Azure Repos 扩展

如果要使用图形界面来管理版本控制中的文件,面向 Visual Studio Code 的 Azure Repos 扩展将提供来自 Microsoft 的支持的解决方案。 若要开始,请下载 Visual Studio Code,然后了解如何配置 Azure Repos 扩展

选项 2. 使用 Team Explorer Everywhere 命令行客户端进行连接

重要

根据 Team Explorer Everywhere README 的说明,此项目不再维护

如果习惯使用 macOS 终端,Team Explorer Everywhere 命令行客户端 (TEE-CLC) 将提供一种受支持的方法,以连接到 TFVC 中的源。

可以按照以下步骤设置到 TFVC 的连接并提交更改。

设置 TEE-CLC

有两种方法可以设置 TEE-CLC。

  • 使用 Homebrew 安装客户端,或
  • 下载并手动安装客户端

最简单的解决方案是使用 HomeBrew,它是适用于 macOS 的包管理器。 若要使用此方法进行安装:

  1. 启动 macOS 终端应用程序。
  2. 使用终端和 Homebrew 主页上的说明安装 Homebrew。
  3. 安装 Homebrew 后,从终端运行以下命令:brew install tee-clc

若要手动设置 TEE-CLC:

  1. 从 Team Explorer Everywhere GitHub 存储库的版本页下载 tee-clc 的最新版本(例如撰写本文时的 tee-clc-14.134.0.zip)。
  2. 将 .zip 的内容提取到磁盘上的一个文件夹中。
  3. 打开 macOS 终端应用,使用 cd 命令切换到上一步骤中使用的文件夹。
  4. 从文件夹中运行命令 ./tf 来测试命令行客户端是否可以运行,可能会提示你安装 Java 或其他依赖项。

安装 TEE-CLC 后,可以运行命令 tf eula 来查看和接受客户端的许可协议。

最后,要在 TFS/Azure DevOps 环境中进行身份验证,需要在服务器上创建一个个人访问令牌。 详细了解如何使用个人访问令牌进行身份验证。 当创建要与 TFVC 一起使用的个人访问令牌时,请确保在配置令牌时提供完全访问权限。

使用 TEE-CLC 连接到存储库

若要连接到源代码,首先需要使用 tf workspace 命令创建工作区。 例如,以下命令连接到 Azure DevOps Services 中名为“MyOrganization”的组织:

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

TF_AUTO_SAVE_CREDENTIALS 环境设置用于保存凭据,因此不会提示你多次输入凭据。 当系统提示输入用户名称时,使用在上一节中创建的个人访问令牌,并使用空白密码。

要创建到本地文件夹的源文件的映射,请使用 tf workfold 命令。 下面的示例将从“MyRepository”TFVC 项目映射一个名为“WebApp.Services”的文件夹,并将其设置为复制到本地 ~/Projects/ 文件夹中(即当前用户的主文件夹中的“Projects”文件夹)。

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

最后,使用以下命令从服务器获取源文件并在本地复制:

tf get

使用 TEE-CLC 提交更改

在 Visual Studio for Mac 中对文件进行更改后,可以切换回终端以检查编辑。 tf add 命令用于将文件添加到待签入的挂起的更改列表中,tf checkin 命令执行对服务器的实际签入。 checkin 命令包含用于添加注释或关联相关工作项的参数。 在下面的代码片段中,WebApp.Services 文件夹中的所有文件都以递归方式添加到签入。 然后,用注释签入代码,并与 ID 为“42”的工作项关联。

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

若要详细了解有关此处提到的命令或其他命令,可在终端使用以下命令:

tf help

请参阅