Update-Package (Console do Gerenciador de Pacotes no Visual Studio)

Disponível somente no Console do Gerenciador de Pacotes NuGet no Visual Studio no Windows.

Atualiza um pacote e suas dependências, ou todos os pacotes em um projeto, para uma versão mais recente.

Sintaxe

Update-Package [-Id] <string> [-IgnoreDependencies] [-ProjectName <string>] [-Version <string>]
    [-Safe] [-Source <string>] [-IncludePrerelease] [-Reinstall] [-FileConflictAction]
    [-DependencyVersion] [-ToHighestPatch] [-ToHighestMinor] [-WhatIf] [<CommonParameters>]

No NuGet 2.8+, Update-Package pode ser usado para fazer downgrade de um pacote existente no projeto. Por exemplo, se você tiver o Microsoft.AspNet.MVC 5.1.0-rc1 instalado, o seguinte comando faria downgrade para 5.0.0:

Update-Package Microsoft.AspNet.MVC -Version 5.0.0.

Parâmetros

Parâmetro Descrição
ID O identificador de pacote para atualizar. Se omitido, atualiza todos os pacotes. O parâmetro -Id é opcional.
IgnoreDependencies Ignora a atualização das dependências de pacote.
ProjectName O nome do projeto que contém os pacotes a serem atualizados, padrão para todos os projetos.
Versão A versão a ser usada para a atualização, assumindo o padrão da última versão. No NuGet 3.0+, o valor da versão deve ser Lowest, Highest, HighestMinor ou HighestPatch (equivalente a -Safe).
Safe Restringe as atualizações para somente as versões com a mesma versão principal e secundária do pacote atualmente instalado.
Origem A URL ou o caminho da pasta para a origem do pacote a ser pesquisada. Os caminhos da pasta local podem ser absolutos ou relativos à pasta atual. Se omitido, Update-Package pesquisa a origem do pacote selecionado no momento.
IncludePrerelease Inclui pacotes de pré-lançamento para atualizações.
Reinstalar Reinstala pacotes usando suas versões atualmente instaladas. Confira Reinstalando e atualizando pacotes.
FileConflictAction A ação a ser executada quando solicitado a substituir ou ignorar arquivos existentes referenciados pelo projeto. Os valores possíveis são Overwrite, Ignore, None, OverwriteAll e IgnoreAll (3.0+).
DependencyVersion A versão dos pacotes de dependência a serem usados, que pode ser uma das seguintes:
  • Lowest (padrão): a versão mais baixa
  • HighestPatch: a versão com o patch mais baixo maior, mais baixo maior, mais alto
  • HighestMinor: a versão com o patch mais baixo maior, mais alto menor, mais alto
  • Highest (padrão para Update-Package sem parâmetros): a versão mais alta
É possível definir o valor padrão usando a configuração dependencyVersion no arquivo Nuget.Config.
ToHighestPatch equivalente a -Safe.
ToHighestMinor Restringe as atualizações para somente versões com a mesma versão principal do pacote atualmente instalado.
WhatIf Mostra o que aconteceria ao executar o comando sem realmente executar a atualização.

Nenhum desses parâmetros aceita entrada de pipeline ou caracteres curinga.

Parâmetros comuns

O Update-Package oferece suporte aos seguintes parâmetros comuns do PowerShell: Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction e WarningVariable.

Exemplos

# Updates all packages in every project of the solution
Update-Package

# Updates every package in the MvcApplication1 project
Update-Package -ProjectName MvcApplication1

# Updates the Elmah package in every project to the latest version
Update-Package Elmah

# Updates the Elmah package to version 1.1.0 in every project showing optional -Id usage
Update-Package -Id Elmah -Version 1.1.0

# Updates the Elmah package within the MvcApplication1 project to the highest "safe" version.
# For example, if Elmah version 1.0.0 of a package is installed, and versions 1.0.1, 1.0.2,
# and 1.1 are available in the feed, the -Safe parameter updates the package to 1.0.2 instead
# of 1.1 as it would otherwise.
Update-Package Elmah -ProjectName MvcApplication1 -Safe

# Reinstall the same version of the original package, but with the latest version of dependencies
# (subject to version constraints). If this command rolls a dependency back to an earlier version,
# use Update-Package <dependency_name> to reinstall that one dependency without affecting the
# dependent package.
Update-Package Elmah –reinstall 

# Reinstall the Elmah package in just MyProject
Update-Package Elmah -ProjectName MyProject -reinstall

# Reinstall the same version of the original package without touching dependencies.
Update-Package Elmah –reinstall -ignoreDependencies