2008-09-03 43 views
1

聲明:我被困在TFS上,我討厭它。TFS - 實驗開發的分支:解決方案無法加載

我的源代碼控制結構是這樣的:

  • 的/ dev
  • /釋放
  • /分支
  • /實驗升級

我從開發分支實驗升級並沒有觸及它。然後,我在開發中做了一些更多的工作,併合併爲實驗升級。不知何故,TFS抱怨說我的源和目標都有變化,我必須解決它們。我選擇了「從源分支複製項目」的全部5個項目。

我簽出實驗升級到本地文件夾,並嘗試打開那裏的主要解決方案文件。 TFS提示我:?

「項目最近被添加到該解決方案你想從源頭控制讓他們

如果我說是的,它做了一些東西,但最終回來遇事加載的項目屈指可數。如果我說沒有,我得到了相同的結果。

我SLN在兩個分支相比告訴我,他們是平等的。

任何人都可以讓我知道我做錯了嗎?這應該是一個直截了當的分支/合併操作...

TIA。


UPDATE:

我注意到,如果我點擊「是」在上面的對話框中,項目被下載到源代碼控制的$ /根...(即走出開發的&分支文件夾)

如果我打開分支中的解決方案,並去除死的項目,並嘗試重新添加(通過右鍵單擊前哨淋巴結,添加現有項目,選擇位於分支文件夾中的項目,它給我錯誤...

無法加載項目c:\ sandbox \ my_solution \ proj1 \ proj1.csproj,該文件已被刪除或刪除。我試圖添加的項目路徑是這樣的:C:\沙盤\ my_solution \分支機構\實驗升級\ proj1 \ proj1.csproj

在世界上什麼是指着這些項目其本地目錄之外 ?解決方案文件與dev分支中的文件相同,並且這些項目加載得很好。我也看了vspscc和vssscc文件,但沒有找到任何東西。

想法?

+0

很可能你的問題來自螺旋工作區映射。有一些操作可以添加新的映射「背後」:將解決方案添加到源代碼管理,從源代碼管理打開,右鍵單擊 - >獲取 - >確定在未映射的文件夾上。我將從基礎開始:修復映射,然後從根運行完整的Get,以確保所有內容都位於磁盤上。然後檢查您的文件夾結構以確保每個分支都使用相同系統的相對路徑。 (分支路徑本身可以有所不同,儘管我發現它只會增加混淆) – 2009-09-16 16:44:47

回答

2

@Ben

實際上,你可以做一個完整的刪除TFS,但強烈不推薦,除非你知道自己在做什麼。你必須用下面的命令在命令行做TF破壞

tf destroy [/keephistory] itemspec1 [;versionspec] 
      [itemspec2...itemspecN] [/stopat:versionspec] [/preview] 
      [/startcleanup] [/noprompt] 

Versionspec: 
    Date/Time   Dmm/dd/yyyy 
         or any .Net Framework-supported format 
         or any of the date formats of the local machine 
    Changeset number Cnnnnnn 
    Label    Llabelname 
    Latest version T 
    Workspace   Wworkspacename;workspaceowner 

就在你這樣做確保你嘗試一下用/預覽。每個人都有自己的分支方法。我將分支發佈,並在開發或根文件夾中進行所有開發。此外,它聽起來像分支工作適合你,只是解決方案文件被搞砸了,這可能是因爲綁定問題和vssss文件。

0

@Nick:目前還沒有變化。我可能不得不刪除它並重新分支(但是你真的不能在TFS中完全刪除)

而且我不同意......分支對於實驗性更改絕對是一種很好的做法。擱置只是臨時存儲,如果我不想辦理入住手續,它將會備份。但是這需要在開發真實特徵的同時開發。

0

不知道更多關於您的解決方案設置我不能確定。但是,如果您有任何項目參考可以解釋它。因爲你在「分支」下有「實驗升級」子文件夾,所以你的相對路徑已經改變了。

這意味着當VS用於在.. \ .. \ project \中查找您引用的項目時,無論它現在需要查看.. \ .. \ .. \ project \ whatever。請注意額外.. \

要解決這個問題,您必須重新添加項目引用。我還沒有找到更好的方法。您可以刪除它們並重新添加它們,也可以轉到屬性窗口並更改它們的路徑,然後重新加載它們。無論哪種方式,您都必須從任何項目中重新引用它們。

此外,檢查您的工作文件夾,以確保它沒有下載任何項目到錯誤的文件夾。這有時會發生......

0

一些事情。文件夾結構是否相同?你能刪除併成功讀取項目引用嗎?

如果您創建一個解決方案,然後手動添加所有項目,這是否工作。 (這可能不是可行的 - 我們有超過一百個項目的解決方案)。

另一件事(可能很愚蠢) - 在你做完分支之後,你是否犯了它?我想知道你是否分支並沒有檢查它,然後合併,然後當你試圖登記時,TFS是非常困惑的。

0

@Kevin:

這意味着當VS用來尋找中.... \項目\無論它現在看起來在...... \項目\無論你引用的項目。注意額外的.. \

你可能會在這裏的東西,但它不能解釋爲什麼一些項目加載和其他人沒有。我還沒有找到它們之間的相關性。

我想我會嘗試重新添加項目,看看是否有效。

0

@Cory:

我想這就是我要去嘗試......我有大約20個項目和8個左右不加載。文件夾結構與root相同...即:在DEV之外沒有任何引用。

相關問題