我想管理一個包含多個項目的解決方案,並將它們分別放在它們自己的存儲庫結構(分支/標記/中繼)中。 我有一個項目的Test1和我提交到自己的倉庫:多個Subversion項目及其在Visual Studio中使用Subversion的依賴
trunk
Test1
Properties
Class1.cs
Test1.csproj
Test1.sln
我有另一個項目的Test2和我提交到自己的倉庫和TEST2取決於Test1.I使用svn:enxternals作在Test2中引用Test1,然後在Visual Studio中右擊解決方案Test2,然後在Add-> Existing Project中添加Test1。
branches/
tags/
trunk/
Test2/
Properties/
Class2.cs
Test2.csproj
Test2.sln
svn:externals Test1 https://mydomain/Test1/trunk/Test1
,我有另一個項目Test3的依賴的Test2:
branches/
tags/
trunk/
Test3/
Properties/
Class3.cs
Test3.csproj
Test3.sln
svn:externals Test2 https://svn/Test2/trunk/Test2
,然後做一樣的Test2。
但是當我將Test2項目添加到Test3時,依賴於Test2項目(Test1)不存在,然後當我想構建Test3時出現錯誤。
爲了解決這個問題,我使用下面的SV:在Test3的存儲庫的外部commnad:
svn:externals Test2 https://mydomain/Test2/trunk
但是當我更新Test3的解決方案如下結構出現在Test3的:
Test3/
Properties/
Class3.cs
Test3.csproj
Test2
Test2/
Properties/
Class2.cs
Test2.csproj
Test1
Properties/
Class1.cs
Test1.csproj
Test2.sln
Test3.sln
但這不是理想的方法,因爲我只希望Test1 dll檢出不是Test1項目,並且爲了構建Test3,我們必須首先構建駐留在Tes3/Test2/Test1/Test1.csproj中的Test1項目,然後構建Test3/Test2.sln。
解決此問題的最佳方法是什麼?