在Visual Studio 2005中,在TFS源代码管理资源管理器中,这些是TFS服务器本身的顶级节点,每个团队项目都有一个子节点。右键单击服务器节点或团队项目的节点会给出一个上下文菜单,其中有一个View History
项。选择此选项将为您提供一个历史记录窗口,显示最近200个左右的变更集,可以是所选的特定团队项目,也可以是所有团队项目。
这是我想知道的所有团队项目的历史。命令行tf.exe history
命令(根据我的理解)基本上与VS TFS源代码控制插件提供的功能相同。但我无法弄清楚如何让tf.exe history
提供此跨所有团队项目的历史记录。
在命令行中,假设我将C:\
映射为工作区的根目录,并Foo
,Bar
和Baz
作为团队项目,我可以做
C:\> tf history Foo /recursive /stopafter:200
获取影响团队项目Foo
的最后200个变更集;或者来自Team Project文件夹
C:\Bar> tf history *.* /recursive /stopafter:200
对团队项目Bar
执行相同的操作 - 请注意,此处允许使用通配符*.*
。
但是,这些都不起作用(每个都显示错误信息):
C:\> tf history /recursive /stopafter:200
历史命令只需要一个项目
C:\> tf history *.* /recursive /stopafter:200
无法确定源控制服务器
C:\> tf history *.* /server:servername /recursive /stopafter:200
无法确定工作区
我没有在tf
的文档中看到用于指定工作区的选项;它似乎只想从当前文件夹中确定它。
那么VS 2005在做什么呢?它是在内部依次对每个团队项目进行历史记录,然后将结果粘在一起吗?
还注意到我尝试过使用Power Tools;命令行中的tfpt history
给出了与此处看到的完全相同的错误消息
答案 0 :(得分:1)
您需要位于映射目录中才能正常工作。例如,如果您将“$ /”映射到“C:\ TFSSOURCE”,请将目录更改为C:\ TFSSOOURCE并再次尝试该命令。