NuGet.exe命令行更新到特定版本

时间:2014-09-05 10:04:02

标签: .net nuget

可以从Visual Studio内部运行的NuGet Update-Package PowerShell命令支持-Version标志,该标志允许更新到特定版本的包。

对于我们的构建服务器工作流而言,nuget.exe update命令不支持此方案是一个很大的限制,我想到两个选项:

  1. 修改nuget.exe命令行工具源代码。这看起来并不难,似乎已经支持使用UpdatePackageReference开关使用的版本规范调用-Safe

  2. 编写一个命令行扩展名(例如解释here),类似于NuGet.Analyze,它将特定于版本的更新命令添加到nuget.exe。但据我所知,这需要复制UpdateCommand类中的大部分代码,其大部分关键方法是内部或私有。

  3. 对nuget.exe命令行工具有更多经验(或为其编写扩展)的人是否有更深入了解正确路由的位置,或者是否有替代解决方案?

1 个答案:

答案 0 :(得分:2)

我最终尝试了第一个选项,这比我最初想的要容易。已经支持更新到API中的特定版本,我只需为命令行工具添加-Version选项,并在指定时调用它。

我已经创建了一个NuGet 2.8.2的分支,并在此处应用了更改:https://github.com/rikoe/nuget/tree/2.8.2

我将尝试提交拉取请求,以将其添加到NuGet的未来版本中。