2009-06-22 92 views
7

我有一個TFS源代碼管理系統下的文件夾,假設在「$/My Project/Branches/Dev」路徑下。如何以編程方式從TFS獲取完整文件夾歷史記錄?

這是最近剛剛從另一個位置,這是「$ /我的項目/開發」移動。

現在,當我在VS的源代碼控制管理要求它的歷史,我得到的全部歷史,這裏所描述的移動操作只是變更集之一。

但是當我嘗試使用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, 
      0, 
      RecursionType.Full, 
      "", 
      versionFrom, 
      VersionSpec.Latest, 
      Int32.MaxValue, 
      true, 
      true); 

回答

14

你傳入slotMode =真。將最終參數更改爲false。

「插槽模式」指的是「路徑查詢,而不是歷史。」如果您只記住一個項目的舊名稱,但不記得它移動到的位置,或者如果> 1項目佔據了給定的路徑,這很有用。

爲了將來的參考,如果你想看看什麼參數VS(或tf.exe)傳遞給服務器,所以你可以模仿他們,turn on tracing

相關問題