2011-04-04 63 views
6

美好的一天!nuget卸載軟件包vs SVN工作副本

我以VS2010 Express上的NuGet 1.2開始。我爲我的項目使用SVN(沒有集成到VS中,只是TortoiseSVN)。問題是 - NuGet似乎在解決方案的根目錄中創建了文件夾/packages/。看來,卸載NuGet包時將刪除包文件夾。這將打破SVN工作副本。

有關SVN和NuGet一起工作的任何指導原則?

在此先感謝!

更新:我的意思不是說整個/packages/文件夾被刪除,我的意思是,升級T4MVC時,45年2月6日的文件夾/packages/T4MVC.2.6.44(連同裏面的.svn文件夾),例如將被刪除,這將打破SVN工作副本。

更新2:正如我檢查 - NuGet不刪除文件夾,如果不屬於包內的東西(在我的情況下,.svn文件夾)。因此,如果您喜歡像我一樣將packages存儲在SVN中 - 升級後您應該從SVN的舊版本軟件包中刪除文件夾。

+0

哦,上帝,那真糟糕。也許這應該報告給NuGet團隊。如果軟件包目錄中有剩餘內容,NuGet應該將其保留在那裏。或者至少失敗優雅。 – 2011-04-04 13:43:59

+0

等一下,我認爲它已經在那裏了:問題[#810](http://nuget.codeplex.com/workitem/810)。 – 2011-04-04 13:49:55

+0

請檢查以上更新 – artvolk 2011-04-04 15:11:01

回答

7

有一種方法可以在不檢入包文件夾的情況下運行NuGet。你只需從SVN中排除整個文件夾,然後按照David Ebbo的帖子中列出的步驟操作:http://blog.davidebbo.com/2011/03/using-nuget-without-committing-packages.html

+0

問題是,我是那些「創建'Lib'或'ExternalDependencies'文件夾,將二進制文件轉儲到那裏並將它們提交到源代碼控制以允許其他人構建的人之一。」我只是想提交Packages文件夾,但它似乎第一個軟件包更新會打破我的工作副本:(將NuGet留下舊的軟件包版本目錄完好無損,如果它發現裏面有'.svn'? – artvolk 2011-04-14 08:14:16

+1

如果有的話,我們不會刪除文件夾文件夾中的其他文件如此在那裏有一個.svn文件夾會導致我們不刪除該文件夾 什麼應該更少的痛苦完全是不登記包文件夾,並讓人們運行命令之前安裝包他們可以構建,這個帖子甚至有一種方法可以將它添加到MSbuild,所以它只是神奇的 – 2011-04-14 15:26:27

+0

我寧願保留SVN中的所有依賴關係,以防萬一我離線時,但有權訪問SVN服務器。已經檢查過我自己 - NuGet不會刪除裏面帶'.svn'的舊包的文件夾 – artvolk 2011-04-15 10:23:19