Get 命令(Team Foundation 版本控制)
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Visual Studio 2019 | Visual Studio 2022
Team Foundation 版本控制 (TFVC) get
命令从 Azure DevOps Server 获取一个或多个文件/文件夹的最新版本或指定版本,或者将其下载到工作区。 tf get
命令提供的用户界面与 Visual Studio 中的不同,但过程基本上相同。 有关使用 Visual Studio 获取文件和文件夹的详细信息,请参阅从服务器下载(获取)文件。
先决条件
请参阅默认 TFVC 权限。
语法
tf get [itemspec] [/version:versionspec] [/all] [/overwrite] [/force] [/remap]
[/recursive] [/preview] [/noautoresolve] [/noprompt]
[/login:username,[password]]
参数
参数
说明
/all
可以使用此选项还原意外从服务器工作区中删除的项。 如果使用建议的本地工作区,则不太可能必须使用此选项。
TFVC 维护工作区包含的所有项的内部记录,包括每个项的版本。 默认情况下,当你获取文件时,如果服务器上的内部记录指示工作区已有你获取的版本,则不会检索该项。 此选项获取所有项,而不考虑内部记录包含的数据。
/force
将 /all
和 /overwrite
结合。
<itemspec>
指定要获取的项的范围。 可以指定多个 itemspec
参数。 如果未提供 itemspec
,则系统以递归方式获取当前工作区中的所有项。
有关语法,请参阅使用 Team Foundation 版本控制命令。
/login <username>,[<password>]
指定用于运行该命令的用户帐户。 请参阅使用 Team Foundation 版本控制命令。
/noautoresolve
默认情况下,系统自动尝试对冲突采用“全部自动解析”。 有关详细信息,请参阅解决 Team Foundation 版本控制冲突。 指定此选项可禁用此默认行为。
/noprompt
禁止显示 Visual Studio 窗口和对话框,并将输出数据重定向到命令提示。 请参阅使用 Team Foundation 版本控制命令。
/overwrite
默认情况下,如果某个项是可写项(清除了该项的只读属性),则系统不会在客户端计算机上检索该项。 除非可写项已签出,否则此选项将替代默认行为并替代该项。如果使用建议的本地工作区,则不太可能必须使用此选项。
/preview
显示将发生的情况,而不实际执行操作 get
。
/recursive
以递归方式在指定目录以及任何子目录中获取项。 如果未指定 itemspec
,则表示使用此选项。
/remap
/version:<versionspec>
指定要在历史记录数据中显示的最高版本或最低版本和最高版本。 默认值为 /version:T
,即最新版本。
有关语法,请参阅使用 Team Foundation 版本控制命令。
注解
开始新任务时,最好在签出文件并开始工作之前运行
tf get
从服务器下载最新文件。 可以从工作区中的任何文件夹运行tf get
。根据需要,
tf get
在磁盘上创建文件夹以包含该命令下载的子项。可以使用 History 命令和 Changeset 命令查看有关项的历史记录的信息。
如果想了解工作区中的文件可能发生哪些更改,可以使用
/preview
选项查看将发生的更改,而无需实际实现这些更改。冲突可能会阻止
get
。 冲突的常见原因是尝试获取有挂起的更改的项。 可以使用 Resolve 命令解决这些冲突。
示例
以下示例假定 $/SiteApp/Main/
映射到工作区中的 c:\code\SiteApp\Main\
。
获取工作区中所有项的最新版本
默认情况下,tf get
命令获取工作区中所有项的最新版本。 例如,以下命令以递归方式获取 $/SiteApp/Main/
中的所有文件,包括其所有子文件夹。
c:\code\SiteApp\Main>tf get
以递归方式获取文件夹中特定类型项的最新版本
以下示例获取 c:\code\SiteApp\Main\SolutionA\Project1 中所有 C# 文件的最新版本。
c:\code\SiteApp\Main\SolutionA\Project1>tf get *.cs /recursive
获取文件的最新版本
以下示例获取 Project1 中 program.cs 的最新版本。
c:\code\SiteApp\Main\SolutionA\Project1>tf get program.cs
获取文件的特定版本
以下示例获取 Project1 中 program.cs 的版本 8。
c:\code\SiteApp\Main\SolutionA\Project1>tf get program.cs;8
获取两个文件的最新版本
以下示例获取 Project1 中 file1.cs 和 file2.cs 的最新版本。
c:\code\SiteApp\Main\SolutionA\Project1>tf get file1.cs file2.cs
同步工作区以匹配团队代码库的版本
以下示例同步工作区,以匹配创建变更集 15 时存在的代码库:
c:\code\SiteApp\Main>tf get /v:15
- 工作区中每个项的名称和内容都会更改,以匹配其在服务器上的状态。
- 在该变更集后删除的项将还原到工作区。
- 在该变更集之后添加的项将从工作区中删除。
同步工作区以匹配团队代码库带标签的版本
以下示例同步工作区以匹配标记LastKnownGood
的代码库中的项:
c:\code\SiteApp\Main>tf get /v:LLastKnownGood
- 工作区中每个带标签项的名称和内容都会更改,以匹配其在服务器上的状态。
- 已删除的带标签项将还原到工作区。
- 服务器上未带标签的项将从工作区中删除。