【问题标题】:How to check files against TFS without getting latest?如何在不获取最新版本的情况下根据 TFS 检查文件?
【发布时间】:2011-05-06 15:42:57
【问题描述】:
在协调旧解决方案时,我一直在从 TFS 获取历史文件版本而无需签出。
也就是说,对于我的解决方案中的一堆文件,我做了“显示历史记录”>“获取此版本”
现在我拥有了我想要的所有历史版本的混合搭配,但我没有跟踪我得到的哪些文件(以及文件的哪些版本)哪些不是最新的。
有没有办法在我的解决方案中获取“非最新”文件的列表?也就是说,我想要输出窗口的替换文件列表如果我要执行“获取最新”但我实际上不想得到它们。
【问题讨论】:
标签:
visual-studio
visual-studio-2010
version-control
tfs
【解决方案1】:
右键单击源代码管理资源管理器中的顶级文件夹,选择“比较”。顶部选项应该是服务器路径,例如在下拉列表中选择$/TeamProject/Myfolder 和latest version。底部选项应该是 c:\MyWorkspace\TeamProject\Myfolder 这将与 TFS 中保存的最新版本与您在本地拥有的文件进行比较。
或者你也可以使用tf diff 命令行工具来做同样的事情。
【解决方案2】:
您可以从命令行执行“预览获取”:tf get /recursive /preview 将输出它将执行获取以将您更新到最新版本的文件列表。
【解决方案3】:
如果您熟悉 Powershell,您应该可以采用这种方法:
- 确保已安装 Team Foundation Power Tools
- 您可能需要重新运行安装程序,因为默认情况下不安装 TF Powershell cmdlet
- 在 x86 模式下打开 powershell(x64 会导致上述 cmdlet 异常)
- Add-PsSnapin Microsoft.TeamFoundation.Powershell
- 导航到您的工作区根目录
- 获取-TfsItemProperty * -recurse |其中 { $_.IsLatest -eq $false } |格式表
- (可选)添加 ">staleList.txt" 以将输出通过管道传输到文件中。
希望这行得通!