Get 命令

更新:2007 年 11 月

将文件的只读副本从 Team Foundation 服务器检索到工作区,并在磁盘上创建文件夹以包含它。

必需的权限

若要使用 get 命令,您必须将对每一个检索的项的“读”权限设置为“允许”,并且您必须拥有目标工作区或具有全局“管理工作区”权限。有关更多信息,请参见 Team Foundation Server 权限

tf get itemspec [/version:versionspec] [/all] [/overwrite] [/force] 
[/preview] [/recursive] [/remap] [/noprompt]

参数

参数

说明

Itemspec

要检索的文件或文件夹。如果未提供 itemspec,则 Team Foundation Server 执行当前工作区的递归获取操作。

Versionspec

用户提供的 /version 选项的值。有关 Team Foundation Server 如何分析版本规范以确定哪些项在其范围内的更多信息,请参见命令行语法 (Team System)

选项

说明

/version

可选的版本规范。versionspec 是要检索的项的版本。可以通过以下方式指定版本:

  • 日期/时间 (D2008-01-21T16:00)

  • 变更集版本 (C1256)

  • 标签 (Lmylabel)

  • 最新版本 (T)

  • 工作区版本 (Wworkspacename;owner)

  • 如果未提供版本,则 Team Foundation Server 将指定的 itemspec 的最新服务器版本检索到工作区。

/all

强制检索所有文件,而不仅仅是过期文件。

/overwrite

覆盖未签出的可写文件。

/force

结合使用 /all/overwrite

/preview

显示将发生的情况,而不实际执行 Get 操作。

/recursive

以递归方式检索与您的 itemspec 匹配的所有项。

/remap

仅适用于 Service Pack 1 版本的 Microsoft Visual Studio Team System 2008 Team Foundation Server。

对于本地磁盘上的内容与从版本控制分支下载的内容相同的所有项,更新本地重新映射分支的数据库引用。

/noprompt

禁止显示本应在此操作过程中显示的任何对话框。

备注

get 命令将项从服务器检索到工作区。如果未指定任何版本,则检索最新的服务器版本。执行 get 操作时,Team Foundation Server 会从服务器中删除自您上次将工作区与服务器同步以来本地标记为删除以及签入的任何文件。已在服务器上重命名或移动的文件将在磁盘上重新定位,以便与服务器上的更改相匹配。已在服务器上重命名或移动的文件也在本地工作区中移动,以便与服务器上的更改相匹配。

get 命令不会覆盖您已在本地工作区目录中签出的文件。如果对某个项发出 get 命令,该项已在您的工作区中签出,并且服务器版本已经发生变化时,系统将提示您解决工作区与服务器版本之间的文件冲突。有关更多信息,请参见 Resolve 命令

  • 如果您的工作区版本与请求的服务器版本相同,并且您要替换磁盘上的文件,请使用 /all 选项。

  • 使用 /overwrite 选项,可以用指定的服务器版本强行覆盖可写的当前工作区版本。

  • 使用 /force 选项,可以用最新的服务器版本覆盖工作区中的所有已签出项。还可以使用 /force 选项覆盖特定的版本。

  • 使用 /preview 选项可以查看下一个 get 操作期间将要发生的更改。

说明:

经常使用 get 命令使您的工作区保持最新,这样可以快速解决您的项目版本与该项目的服务器版本之间的差异。

有关如何查找“tf”命令行实用工具的信息,请参见 Tf 命令行实用工具命令

将 Get 与 /remap 选项一起使用

将本地文件夹重新映射到新的分支或不同的分支时,/remap 选项可以节省下载时间。例如:

  1. 在计算机上将 $/branch1 映射到 D:\branch。

  2. 运行 tf get 获取从 $/branch1 到本地文件夹所有项的副本。

  3. 更改 $/branch1 的映射,然后将 $/branch2 映射到以前映射为 $/branch1 的本地文件夹 (D:\branch)。

  4. 运行带有 /remap 选项的 tf get,以便仅下载 $/branch2 中与本地文件夹 (D:\branch) 上 $/branch1 中内容不同的内容。

说明:

只有在安装了 Service Pack 1 版本的 Microsoft Visual Studio Team System 2008 Team Foundation Server 时,此功能才可用。

示例

下面的示例从服务器检索 314.cs 的最新版本。如果有对 314.cs 的挂起的更改,Team Foundation Server 将提示您解决所有冲突。

C:\projects>tf get 314.cs

下面的示例从服务器检索 1256.cs 的版本 8。

说明:

使用 1256.cs;8 与使用 1256.cs;C8 具有同样的效果。默认情况下,如果您在分号后只指定一个数字,则使用变更集版本。

C:\>tf get 1256.cs;8

下面的示例将所有未掩蔽的项的最新版本从服务器文件夹和子文件夹检索到 C:\projects 目录,并在需要的位置创建本地文件夹。有关如何掩蔽和取消掩蔽文件夹的更多信息,请参见 Workfold 命令

C:\projects>tf get

下面的示例提供检索签入的变更集为 1999 的 1256.cs 的版本的其他方法。

c:\projects>tf get /version:C1999 1256.cs

- 或 -

c:\projects>tf get 1256.cs;C1999

下面的示例从服务器检索创建变更集 271 时存在于服务器中的所有未掩蔽的项的版本。

c:\projects>tf get /version:C271

下面的示例检索标签为“build42”的 build42。只要没有挂起的更改,这将使您的工作区与该标签匹配。将从本地磁盘上删除此标签中没有的任何文件。

c:\projects>tf get /version:Lbuild42

下面的示例根据特定的日期和时间检索服务器上的版本。

c:\projects>tf get /version:D2008-01-21T16:00

请参见

任务

演练:通过命令行使用 Team Foundation 版本控制

如何:获取团队项目的源代码

如何:掩蔽或取消掩蔽工作区中的文件夹

参考

Resolve 命令

Merge 命令

Checkout 和 Edit 命令

Checkin 命令

Unshelve 命令

Workfold 命令

其他资源

Tf 命令行实用工具命令