一個Solution包含ProjectA,並已簽入VSS Source Control。

後來在Slution中新增ProjectB,在ProjectB中使用Add As Link功能繫結加入ProjectA下的一個Class(HttpToolbox.cs)。程式寫好測試妥當,想將ProjectB也加入VSS時,彈出以下錯誤訊息:

The project X:\Projects\MySln\ProjectB\ProjectB.csproj cannot be added to source control. In folder X:\Projects\MySln\ProjectA, it overlaps a project that is already bound to source control at a lower root. To avoid this problem, add the project from a location below the binding root of the other source controlled projects in the solution.

無法將專案 X:\Projects\MySln\ProjectB\ProjectB.csproj 加入至原始檔控制中。在資料夾 X:\Projects\MySln\ProjectA 中,該專案和已繫結至較低根目錄原始檔控制中的專案出現重疊的情形。若要避免此一問題,請從方案中下列其他原始檔控制專案的繫結根目錄位置處加入專案。

依字面的說法,是因為ProjectB Add As Link的對象在較低的根目錄,而MSDN論壇有篇討論,微軟Support做了詳細說明,利用該文所舉案例推演,應是ProjectB的層次目錄在ProjectA之上導致,但我的狀況是X:\Projects\MySln\ProjectB\ProjectB.csproject去繫結X:\Projects\MySln\ProjectA\HttpToolbox.cs,二者的Unified Root應該相同,似乎不構成出錯理由。

暫不管成因為何,在另一篇文章找到解法(雖然該文是繫結上一層目錄檔案,情境與我亦不同): 在ProjectB中先移除HttpToolbox.cs,將ProjectB加入VSS後,再重新Add As Link,問題排除。


Comments

Be the first to post a comment

Post a comment