在 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
获取影响 Team ProjectFoo
的最后 200 个变更集;或从团队项目文件夹中
C:\Bar> tf history *.* /recursive /stopafter:200
这对 Team Project 执行相同的操作Bar
- 请注意,*.*
此处允许使用通配符。
但是,这些都不起作用(每个都给出显示的错误消息):
C:\> tf history /recursive /stopafter:200
history 命令只取一项
C:\> tf history *.* /recursive /stopafter:200
无法确定源代码控制服务器
C:\> tf history *.* /server:servername /recursive /stopafter:200
无法确定工作区
我在文档中没有看到tf
用于指定工作区的选项;它似乎只想从当前文件夹中确定它。
那么VS 2005在做什么呢?是否在内部依次对每个团队项目进行历史记录,然后将结果粘在一起?
另请注意,我已尝试使用 Power Tools;tfpt history
从命令行给出的错误信息与这里看到的完全相同