从TFS获取该文件的特定版本

时间:2015-10-05 09:06:26

标签: c# .net tfs

我正在尝试通过以下代码从TFS下载文件:

    TeamFoundationServer tfsServer = new TeamFoundationServer(options.TfsUri);
    VersionControlServer vcServer = (VersionControlServer)tfsServer.GetService(typeof(VersionControlServer));
    if (vcServer == null)
        throw new ApplicationException("Invalid vcServer");
    Item i;
    foreach (TFSObject obj in TfsObjectList)
    {
        if (!obj.isFolder)
        {
            i = vcServer.GetItem(obj.tfsPath);
            i.DownloadFile(obj.localPath);
            Console.WriteLine(obj.localPath + " is downloaded");
        }
    }

一切都按预期工作,但它总是在寻找文件的最新版本。如何获取之前签入的文件版本或办理登机手续#XXXXX的文件版本?此签入后可以修改该文件...

1 个答案:

答案 0 :(得分:1)

您的单个​​参数GetItem(string),在最新版本的指定路径获取Item的信息。

您可以指定VersionSpec来下载特定版本。例如,要下载变更集42:

vcServer.GetItem(obj.tfsPath, new ChangesetVersionSpec(42));