根据解决方案配置指定nuget包版本

时间:2014-02-10 15:13:16

标签: visual-studio-2012 configuration msbuild nuget transform

我正在开展一个持续集成项目。我已经建立了一个本地nuget包存储库,并设置Atlassian Bamboo(基本上是msbuild)进行构建和部署。 nuget包版本如下:

MyPackage.Library版本1.1.1.1

MyPackage.Library版本1.1.1.1-测试

MyPackage.Library版本1.1.1.1-Dev

没有附加名称的包是生产包。 Bamboo构建所有这三个并将它们部署到nuget包服务器,但是我打算使用它们的项目会出现问题。我还没有找到一种方法来'转换'packages.config以指定测试或dev nuget包,当bamboo构建测试时,我将项目的开发版包含在包中。(抱歉,如果这令人困惑)。

如何根据哪种解决方案配置(在IDE中)指定要使用的nuget包?

(编辑:现在正在研究视觉工作室nuget包恢复的构建是如何工作的。我知道我可以使用类似的东西手动指定包...

String cmdnuget = "C:\\Tools\\nuget restore " + item.toString() + " -PackagesDirectory " + startingDir.toString() + "\\packages -NonInteractive -NoCache -ConfigFile C:\\Tools\\NuGet.config";

但是在IDE开发和调试中,这并没有真正帮助。)

EDIT2:想要使用个人git repo for dev / test / prod。这可能是要选择的路径,因为packages.config文件可以包含到dev / test包的正确映射。如果有人有更好的想法,我现在就把它打开。

1 个答案:

答案 0 :(得分:0)

为每个环境使用单独的repo并使每个环境包含适当的packages.config,其中包含适用于每个环境的正确nuget包,这是解决此问题的简单方法。我老实地问了错误的问题,采取了错误的方法,后来发现一种简单的方法有时效果最好。