通过单个命令通过Nuget安装多个软件包

时间:2012-01-26 09:13:41

标签: visual-studio-2010 powershell nuget

我通过Visual Studio的软件包管理器控制台使用Nuget。对于每个项目,我需要添加一些包,例如xunit.contribs,fluentassertions和nsubstitute。为此,我在consolle中键入3个命令。

我知道控制台只是另一个PowerShell主机,应该有一种方法来创建一个脚本(一种Add-Test-Stuff.ps1),它将一次添加几个包。最好的方法是什么?

3 个答案:

答案 0 :(得分:8)

我通常在数组中定义我的包并使用foreach循环

执行它们
$angular = "AngularJS.Animate", "AngularJS.Core", "AngularJS.Locale", "AngularJS.Resource", "AngularJS.Route", "AngularJS.Sanitize", "AngularJS.Touch"
$angular | foreach {Install-Package $_} 

这也可以写成一行

"AngularJS.Animate", "AngularJS.Core", "AngularJS.Locale", "AngularJS.Resource", "AngularJS.Route", "AngularJS.Sanitize", "AngularJS.Touch" | foreach {Install-Package $_} 

答案 1 :(得分:1)

抱歉,这不是你问题的直接答案。但是我已经看到Code52 IdeaStrike项目采用了非常好的实践。

它们没有包含在源代码管理中的任何软件包,而是在首次构建解决方案时安装并自动下载,具体取决于packages.config

配置细节如下:

Using NuGet without committing packages to source control

答案 2 :(得分:1)

将任何脚本放入解决方案目录,您就可以从Package Manager控制台执行它。