我在TFS源代码控制系统下有一个文件夹,假设在“$/ My Project / Branches / Dev”路径下.
它刚刚从另一个位置移动,即“$/ My Project / Dev”.
现在,当我从VS中的Source Control Explorer请求其历史记录时,我获得了完整的历史记录,其中描述的移动操作只是其中一个更改集.
但是当我尝试使用TFS SDK获取历史记录时,我只获得了最近的历史记录,该文件夹的移动开始了.我怎样才能获得完整的历史记录?
我正在使用以下代码:
TeamFoundationServer tfs = TeamFoundationServerFactory.GetServer(tfsServerURL); VersionControlServer vcs = (VersionControlServer)tfs.GetService(typeof(VersionControlServer)); // Null means All VersionSpec versionFrom = null; System.Collections.IEnumerable enumerable = vcs.QueryHistory(_tfsPath,VersionSpec.Latest,RecursionType.Full,"",versionFrom,Int32.MaxValue,true,true);
解决方法
您正在传递slotMode = true.将最终参数更改为false.
“插槽模式”表示“按路径查询,而不是按历史查询”.如果您只记住项目的旧名称但不记得将其移动到的位置,或者如果> 1项目已占用给定路径,则此功能非常有用.
为了将来参考,如果你想看看VS(或tf.exe)传递给服务器的参数是什么,你可以模仿它们,turn on tracing.