2016-04-02 145 views
0

我一直在努力讓NuGet版本控制在我的ASP Core項目中,並遇到一些奇怪的行爲,並想問他們爲什麼決定這樣做。NuGet版本控制

1)選擇範圍內的最低版本。

例如:[1.0.0,2.0.0)並不意味着選擇1.X.X中的最新版本,而是選擇最低版本,基本上總是1.0.0,並且從不更新。

2)設置特定版本選擇不同的版本

例如: 「1.0.0」 真的會選擇 「1.0.X」。 這個真的讓我擔心。我想確保在使用特定版本標記代碼時,所有將來的版本都將使用相同的版本。有了這個實現,構建不保證是可重複的!

我來自使用Maven和NPM,並試圖保持開放的態度,以其他方式進行版本控制,但是這兩個讓我感到困惑。

請幫我理解他們爲什麼會這樣做,基本上是從其他軟件包管理器解決方案的後面。

+0

相當有據可查的如何指定版本,並強制的NuGet只使用那個版本? –

+0

NuGet Enterprise準備好了嗎?我已經指定了一個版本,現在它告訴我,它解決了一個更低的版本.....我感覺NuGet有一些好點子,但還沒有準備好黃金時段。 –

回答

1
  1. 如果您需要最新版本,例如1.0 *,您可以使用浮動版本。
  2. 我認爲你在這裏不正確。如果請求1.0.0,則將在NuGet服務器上安裝1.0.0,如果1.0.0是可用。如果在服務器上找不到它,它將安裝找到的下一個最接近的版本1.0.1。

這是在

http://docs.nuget.org/consume/ProjectJson-Dependency#dependency-resolution-in-nuget-v3-/-project.json

+0

我明白這是它在做什麼,我正在尋找爲什麼他們決定這樣做。我認爲這是一個糟糕的設計選擇。 –