History 命令

显示一个或多个文件或文件夹的修订历史记录。 数据显示在“历史记录”窗口中或命令提示符处(如果指定了 /noprompt 选项)。

**要求:**请参阅 Team Foundation Server 权限参考.

tf hist[ory] itemspec [/version:versionspec] 
[/stopafter:number] [/recursive] [/user:username] 
[/format:(brief|detailed)] [/slotmode] [/itemmode] [/noprompt]
[/login:username,[password]] [/sort:ascending,descending]
[/collection:TeamProjectCollectionUrl]

参数

参数

说明

/collection: TeamProjectCollectionUrl

指定包含项的团队项目集合的 URL。 例如:http://myserver:8080/tfs/DefaultCollection。

默认情况下,假定团队项目集合是一个包含映射当前目录的工作区的集合。

/format

指定在指定 /noprompt 选项时要显示的有关每个变更集的详细信息的数量:

  • Brief(默认值):显示有关每个变更集的一个行,包括:ID 号、所做的更改、作出更改的用户、日期以及评论。 某些数据可能会被截断。

  • Detailed:显示每个变更集的完整说明。 除以上信息外,此选项还显示额外的数据(例如,日期与时间、更改的项目、签入说明和签入策略警告)。

/itemmode

不能将此选项与 /slotmode 选项一起使用。 请参阅 Matt Mitrik:更改为 TFS 2010 年版本控制中的槽模式

itemspec

指定显示其历史记录的项目。 有关语法,请参阅 使用 Team Foundation 版本控制命令

/noprompt

此选项:

  • 禁止显示窗口和对话框(例如,“历史记录”窗口),并将输出数据重定向到命令提示。 请参阅 使用 Team Foundation 版本控制命令

  • 不显示在对项进行移动、重命名、分支或合并操作之前所做的修订的历史记录。

/login:username,[password]

指定用于运行该命令的用户帐户。 请参阅 使用 Team Foundation 版本控制命令

/recursive

以递归方式检索有关指定目录和任何子目录中的项的历史记录数据。

/slotmode

不能将此选项与 /itemmode 选项一起使用。 请参阅 Matt Mitrik:更改为 TFS 2010 年版本控制中的槽模式

/sort

按以下任一顺序对一个或多个文件或文件夹的修订历史记录进行排序:

  • Ascending:从最旧到最新版本。

  • Descending(默认值):从最新到最旧版本。

您必须将 /noprompt 选项与此选项一起使用。

/stopafter:number

指定要在历史记录数据中显示的变更集的最大数目。

/user:username

筛选历史记录数据以显示指定用户所做的更改。 星号 (*) 符号包括有关来自所有用户的更改的数据(默认值)。

/version:versionspec

针对历史记录数据指定下列限制之一:

  • 最高版本

  • 使用范围 ~ 语法的最低和最高版本。

默认值为 /version:W(工作区中的版本)。

有关语法,请参阅 使用 Team Foundation 版本控制命令

不能将此选项与 /slotmode 选项一起使用。

示例

获取单个文件的历史记录

c:\code\SiteApp\Main\SolutionA\Project1>tf history program2.cs

在“历史记录”窗口中显示对 program.cs 所做的所有更改。

c:\code\SiteApp\Main\SolutionA\Project1>tf history program2.cs /noprompt

在命令提示符窗口中显示对 program.cs 所做的所有更改。 例如:

Changeset Change                     User              Date       Comment
--------- -------------------------- ----------------- ---------- -------- 
29        edit                       Jamal Hartnett    4/23/2012  Fix bug
20        add                        Raisa Pokrovskaya 4/12/2012  Add new  

获取文件夹中所有项的历史记录

c:\code\SiteApp\Main\SolutionA>tf history * /recursive

在“历史记录”窗口中显示对 SolutionA 中的所有项(包括子文件夹中的项)所做的所有更改。

获取对文件夹中的所有项所做的最后五次更改的历史记录

c:\code\SiteApp\Main\SolutionA>tf history * /noprompt /recursive /stopafter:5

显示对 SolutionA 中的项(包括子文件夹中的项)做出的最近 5 次更改:

Changeset User              Date       Comment
--------- ----------------- ---------- ----------------------------------------
31        Raisa Pokrovskaya 5/15/2012
30        Raisa Pokrovskaya 4/23/2012
29        Jamal Hartnett    4/23/2012  Fix bug in new method
20        Raisa Pokrovskaya 4/12/2012  Add new method, add program2.cs to Proje
15        Raisa Pokrovskaya 4/8/2012

从版本 x 或更早版本中获取历史记录

c:\code\SiteApp\Main\SolutionA>tf history /noprompt * /recursive /v:30

显示对版本为 30 和之前的版本的 SolutionA 中的所有项(包括子文件夹中的项)做出的更改:

Changeset User              Date       Comment
--------- ----------------- ---------- ----------------------------------------
30        Raisa Pokrovskaya 4/23/2012
29        Jamal Hartnett    4/23/2012  Fix bug in new method
20        Raisa Pokrovskaya 4/12/2012  Add new method, add program2.cs to 15        Raisa Pokrovskaya 4/8/2012

从日期 D 或更早日期中获取历史记录

c:\code\SiteApp\Main\SolutionA>tf history /noprompt * /recursive /v:D4/24/2012

--或者--

c:\code\SiteApp\Main\SolutionA>tf history /noprompt * /recursive /v:D2012-04-24T12:00

显示在 4/23/12 或更早时间对 SolutionA 中的所有项(包括子文件夹中的项)所做的更改:

Changeset User              Date       Comment
--------- ----------------- ---------- ----------------------------------------
30        Raisa Pokrovskaya 4/23/2012
29        Jamal Hartnett    4/23/2012  Fix bug in new method
20        Raisa Pokrovskaya 4/12/2012  Add new method, add program2.cs to 15        Raisa Pokrovskaya 4/8/2012

获取从版本 x 到版本 y 的历史记录

c:\code\SiteApp\Main\SolutionA>tf history /noprompt * /recursive /v:D4/12/2012~D4/24/2012

显示在 4/12/2012 和 4/23/12 之间对 SolutionA 中的所有项(包括子文件夹中的项)所做的更改:

Changeset User              Date       Comment
--------- ----------------- ---------- ----------------------------------------
30        Raisa Pokrovskaya 4/23/2012
29        Jamal Hartnett    4/23/2012  Fix bug in new method
20        Raisa Pokrovskaya 4/12/2012  Add new method, add program2.cs to 

获取详细历史记录

c:\code\SiteApp\Main\SolutionA>tf history /noprompt * /recursive /v:D4/12/2012~D4/24/2012 /format:detailed

显示在 4/12/2012 和 4/23/12 之间对 SolutionA 中的所有项(包括子文件夹中的项)所做的更改的相关详细信息:

-------------------------------------------------------------------------------
Changeset: 30
User: Raisa Pokrovskaya (Fabrikam)
Date: Monday, April 23, 2012 1:23:05 PM

Comment:
  Much better name for this file

Items:
  rename                $/SiteApp/Main/SolutionA/Project1/programBig.cs
  delete, source rename $/SiteApp/Main/SolutionA/Project1/program3.cs;X15

-------------------------------------------------------------------------------
Changeset: 29
User: Raisa Pokrovskaya (Fabrikam)
Date: Monday, April 23, 2012 1:03:13 PM

Comment:
  Fix bug in new method

Items:
  edit $/SiteApp/Main/SolutionA/Project1/program1.cs
  edit $/SiteApp/Main/SolutionA/Project1/program2.cs

-------------------------------------------------------------------------------
Changeset: 20
User: Raisa Pokrovskaya (Fabrikam)
Date: Thursday, April 12, 2012 5:09:35 PM

Comment:
  Add new method, add program2.cs to Project1

Items:
  add $/SiteApp/Main/SolutionA/Project1/program2.cs


Check-in Notes:
  Documentation:
    An important new part of our codebase.

Policy Warnings:
  Override Reason:
    Jamal agrees with me that we can bypass for this check-in.
  Messages:
    The Code Analysis Policy requires files to be checked in through Visual
Studio with an open solution.

获取文件夹的非递归历史记录

c:\code\SiteApp\Main\SolutionA>tf history .

在“历史记录”窗口中显示 SolutionA 文件夹的历史记录,可通过该窗口浏览之前对该文件夹所做的更改。 例如,如果对该文件夹的最新更改是重命名,则可以展开变更集以查看在重命名前发生的更改。

c:\code\SiteApp\Main\SolutionA>tf history . /noprompt

在命令提示符窗口中显示对 SolutionA 文件夹所做的最新更改。

在 Visual Studio 中工作

提示

  • 提示 有关如何使用**“历史记录”**窗口的信息,请参阅获取某项的历史记录

  • 提示 获取有关变更集的更多详细信息(例如,需要查看关联的工作项):

    • 在“历史记录”窗口中,双击变更集或打开其上下文菜单并选择**“变更集详细信息”**。

    • 在命令提示符下,使用 Changeset Command

  • 提示 有关变更集的详细信息,请参阅查找和查看变更集

  • 提示 /collection 选项对于从计算机和用户帐户(不具有映射到包含项的团队项目集合的工作区)运行该命令很有用。

  • 提示 请参阅查看和管理过去的版本