2013-04-17 86 views
4

我們使用TFS2012和VS2012(有些人使用Update1和一些Update2)。 )。在某些人的機器上,我們得到:TF400324 - 源控制資源管理器中的「找不到頁面」

TF400324: Team Foundation services are not available from server vstfps\Protection. 
Technical information (for administrator): 
    Page not found. 

這發生在VS2012和運行「tf.exe get」時的任何源代碼管理訪問。但是,其他TFS服務正常工作,例如工作項查詢。

我已經卸載並重新安裝VS(這次沒有Update2),問題依然存在。

我發現一個similar problem report,雖然它有些不同,並且任何一種方式都沒有修復。

調試與網絡監視器,我注意到,受影響的機器使用不同的URI:

Good: /tfs/Protection/VersionControl/v4.0/repository.asmx 
Bad: /tfs/Protection/VersionControl/v5.0/repository.asmx 

什麼決定了URI該機採用? 我該如何改變?

回答

5

解決方法:關閉Visual Studio和相關的應用程序,然後刪除%LocalAppData%\Microsoft\Team Foundation\4.0\Cache

原因:(從報告中重建從我的系統......)

我TFS2012 RTM服務器從現有服務器克隆,保持相同的集合GUID。影響:

  • 舊服務器安裝並卸載了Update1。 TFS2012 RTM僅支持v4.0 URI,而TFS2012 Update1則增加了v5.0。所以有時候,客戶端會感到困惑,並轉到舊服務器,獲取v5.0 URI,並將其緩存在...\Cache\<guid>\LocationServiceData.config中。
  • 我們已經讓TFS構建失敗,並且「無法複製活動日誌」,因爲他們試圖複製到舊的服務器。

修正:更改在新的服務器GUID的收集,通過運行:

tfsconfig ChangeServerID /sqlinstance:<SQLInstanceName> /databasename:tfs_configuration 

之後,人們需要清理緩存最後一次,就是這樣。