2010-06-15 68 views
0

在Visual Studio 2005中,在TFS源代碼管理資源管理器中,這些是TFS服務器本身的頂級節點,每個團隊項目都有一個子節點。右鍵單擊服務器節點或Team Project的節點會出現一個上下文菜單,其中有一個View History項目。選擇此項可爲您提供一個「歷史記錄」窗口,顯示最後200個左右的變更集,無論是針對所選的特定團隊項目,還是跨所有團隊項目。當tf.exe不能時,VS 2005如何在所有TFS團隊項目中提供歷史記錄?

在我想知道的所有團隊項目中,這是歷史。命令行tf.exe history命令提供(據我所知)基本上與VS TFS源代碼管理插件提供的功能相同。但我無法弄清楚如何讓tf.exe history提供這個跨所有團隊項目的歷史。

在命令行,假如我有C:\映射爲我的工作區的根,和FooBar,並且Baz作爲團隊項目,我可以做

C:\> tf history Foo /recursive /stopafter:200 

得到最後200名的變更那受影響的團隊項目Foo;或者從一個團隊項目文件夾

C:\Bar> tf history *.* /recursive /stopafter:200 

它做同樣的事,團隊項目Bar內 - 注意通配符*.*這裏允許的。

然而,這些工作的(每個給出所示的錯誤消息):

C:\> tf history /recursive /stopafter:200 

歷史命令採用恰好一個項目

C:\> tf history *.* /recursive /stopafter:200 

無法確定源代碼管理服務器

C:\> tf history *.* /server:servername /recursive /stopafter:200 

無法確定工作區

我沒有看到在這個文檔中的一個選項用於tf用於指定的工作區;它似乎只想從當前文件夾中確定它。

那麼什麼是VS 2005在做什麼?它是否在內部對每個團隊項目輪流進行歷史記錄,然後將結果粘貼在一起?

請注意,我已經嘗試過電動工具; tfpt history從命令行給出完全相同的錯誤消息在這裏看到

回答

1

你需要在一個映射的目錄中工作。例如,如果您將「$ /」映射到「C:\ TFSSOURCE」,將目錄更改爲C:\ TFSSOOURCE,然後再次嘗試該命令。

+0

啊哈!這讓我想到了答案。與它在問題中所說的相反,* *沒有將'C:'映射到'$ /' - 實際上*沒有任何*映射到'$ /',並且所有Team Projects都將顯式映射設置爲' C:\ Foo'等。爲'$ /'設置映射表示'tf history *。*'現在可以在根目錄下工作!我仍然想知道VS在做什麼...... – AakashM 2010-06-16 07:29:17

+0

這就是歷史的工作方式。如果您指定*。*的項目規格,它會查看您當前的磁盤文件夾是什麼,並檢查映射到源文件夾並從那裏開始搜索。 – Robaticus 2010-06-16 13:15:39

相關問題