2013-03-12 91 views
1

所以我們有一個由3個項目BusinessLibrary.UI,BusinessLbrary.Domain的ASP.net MVC 4溶液,BusinessLibrary.TestsTFS和圖書館的NuGet不可

我們使用的NuGet來管理我們所有的像json.net,實體等圖書館,但我們也有一些私人圖書館,我們已經添加。什麼是管理我們擁有的私人圖書館的最佳方式。我希望能夠讓新開發人員在開始時獲取與此項目關聯的所有DLL。

我讀過,我可以創建一個庫或lib文件夾,然後只是引用該DLL的那裏。但是,如果將該項目與項目的源代碼管理進行覈對,那麼呢?我只想複製非nuget私人圖書館嗎?這是最好的方式嗎?

什麼是這種情況的標準做法,我應該如何存儲我的私人圖書館?

回答

2

就我個人而言,我在解決方案級別創建了一個依賴關係文件夾。我把所有在那裏引用的非NuGet庫。當我添加引用時,我確定從依賴關係文件夾引用程序集。確保將依賴關係文件夾添加到源代碼管理。

這樣,任何開發人員從源代碼​​管理下拉解決方案都會自動獲得所有依賴關係的正確版本。

+0

謝謝!這需要TFS工作區中的新映射正確嗎? – ios85 2013-03-12 15:25:45

+0

@ ios85 - 老實說,我不記得TFS足夠說一種或另一種。 – 2013-03-12 15:32:12

+0

位於解決方案級別的arent文件夾未映射到結構中的物理文件夾?當我創建一個名爲Dependencies的文件夾(在解決方案級別),並向它添加了一個DLL時,dll出現在解決方案文件夾的根目錄中。所以,你只是將DLL移動到文件夾中(比如說依賴關係),然後創建一個解決方案文件夾和一個新的項目(這只是一個參考)? – ios85 2013-03-12 16:27:36

0

我們創建一個庫目錄,在其中添加程序集並使用相對路徑來引用它們。我們也檢查這個目錄,所以每個團隊成員立即擁有最新的程序集。

另一個選擇是設置一個私人的NuGet feed(比如MyGet),並將你的程序集作爲包發佈。

0

在我們的項目中,我們爲私有DLL創建了lib文件夾,並將其與源代碼一起簽入到TFS中。 NuGet包自動添加到TFS。

2

或者,您可以安裝自己的NuGet server,並在成功構建這些庫之後將庫放在那裏