有没有办法在TFS中获取所有已检入/更新X次的文件?我目前有一个ASP.NET MVC项目,我正在使用VS 2012的TFS预览。
答案 0 :(得分:1)
虽然速度很慢,但最好的方法是在已检入版本控制的每个文件上运行QueryHistory。如果计算返回的更改集的数量,则会告诉您文件已更新的次数。
基本上你想做这样的事情:
TfsTeamProjectCollection tpc = new TfsTeamProjectCollection("http://server:8080/tfs/collection";
VersionControlServer vcs = tpc.GetService<VersionControlServer>();
foreach (string filePath in filePaths)
{
var changesets = vcs.QueryHistory(filePath, ...);
// Do your counting logic here
}
同样,这不会跑得非常快,但这是回答你想要回答的问题的最佳方式。如果X大于1或2,那么我们可以提出一个更好的算法,在根上调用QueryHistory并在深度方向上向下工作,希望修剪掉树的某些部分。