NuGet版树

时间:2012-03-30 14:58:50

标签: nuget

将NuGet与多个版本树一起使用的正确/可接受方式是什么?我们有一个2.12版本的产品,并且它正在不断地工作,生成属于主要数字2的更新版本。与此同时,我们还在3.5版本中积极地使用其他功能集和模式。如果我使用相同的NuGet包ID,默认情况下用户将始终获得3.5版本。

我应该为每个主要项目版本创建不同的包ID吗?

2 个答案:

答案 0 :(得分:5)

根据您的情况,我看到两种可能的解决方案。您可以使用不同的软件包ID,也可以通过手动编辑packages.config文件来限制客户端使用特定的版本范围。

在packages.config中,您可以设置version constraint

<packages>
    <package id="SomePackage" version="2.1.0" allowedVersions="[2,3)" />
</packages>

这将使客户端获得最新的2.x版本,但永远不会升级到3.x版本。

答案 1 :(得分:1)

此页面:http://nuget.codeplex.com/wikipage?title=Pre-Release%20Packages应该可以帮助您。简而言之,标记为2.12的包将被归类为稳定的,但是带有字母的版本,例如3.5beta被视为预发布版本,只能使用–Prerelease标记进行安装。