Partage via


Commande de restauration (CLI NuGet)

S’applique à : consommation de package • Versions prises en charge : 2.7+

Télécharge et installe les packages manquants dans le dossier packages. Lorsqu’il est utilisé avec NuGet 4.0+ et le format PackageReference, génère un fichier <project>.nuget.props, le cas échéant, dans le dossier obj. (Le fichier peut être omis du contrôle de code source.)

Sur Mac OSX et Linux avec l’interface CLI sur Mono, la restauration des packages n’est pas prise en charge avec PackageReference.

Usage

nuget restore <projectPath> [options]

<projectPath> spécifie l’emplacement d’une solution ou d’un fichier packages.config. Pour plus d’informations sur le comportement, consultez Remarques.

Options

  • -ConfigFile

    Fichier de configuration NuGet à appliquer. S’il n’est pas spécifié, %AppData%\NuGet\NuGet.Config (Windows) ou ~/.nuget/NuGet/NuGet.Config, ou ~/.config/NuGet/NuGet.Config (Mac/Linux) est utilisé.

  • -DirectDownload

    (4.0+) Télécharge les packages directement sans remplir de caches avec des fichiers binaires ou des métadonnées.

  • -DisableParallelProcessing

    Désactive la restauration de plusieurs packages en parallèle.

  • -FallbackSource

    (3.2+) Liste des sources de package à utiliser en tant que secours si le package n’est pas trouvé dans la source principale ou par défaut. Utilisez un point-virgule pour séparer les entrées de liste.

  • -Force

    Dans les projets basés sur PackageReference, force la résolution de toutes les dépendances, même si la dernière restauration a réussi. La spécification de cet indicateur est similaire à la suppression du fichier project.assets.json. Cela ne contourne pas le cache http.

  • -ForceEnglishOutput

    (3.5+) Force nuget.exe à s’exécuter avec une culture indifférente basée sur l’anglais.

  • -ForceEvaluate

    Force la restauration à réévaluer toutes les dépendances, même s'il existe déjà un fichier de verrouillage.

  • -?|-help

    Affiche les informations d’aide pour la commande.

  • -LockFilePath

    Emplacement de sortie où le fichier de verrouillage du projet est écrit. (PROJECT_ROOT\packages.lock.json par défaut).

  • -LockedMode

    Ne pas autoriser la mise à jour du fichier de verrouillage du projet.

  • -MSBuildPath

    (4.0+) Spécifie le chemin d’accès de MSBuild à utiliser avec la commande, en ayant la précédence sur -MSBuildVersion.

  • -MSBuildVersion

    (3.2+) Spécifie la version de MSBuild à utiliser avec cette commande. Les valeurs prises en charge sont 4, 12, 14, 15.1, 15.3, 15.4, 15.5, 15.6, 15.7, 15.8, 15.9. Par défaut, MSBuild dans votre chemin d’accès est sélectionné ; sinon, il est défini par défaut sur la version installée la plus élevée de MSBuild.

  • -NoHttpCache

    Empêche NuGet d’utiliser des packages mis en cache http. Consultez Gestion des packages globaux et des dossiers de cache.

  • -NonInteractive

    Supprime les invites pour l’entrée utilisateur ou les confirmations.

  • -OutputDirectory

    Spécifie le dossier dans lequel les packages sont installés. Si aucun dossier n’est spécifié, le dossier en cours est utilisé. Obligatoire lors de la restauration avec un fichier packages.config, sauf si PackagesDirectory ou SolutionDirectory est utilisé.

  • -PackageSaveMode

    Spécifie les types de fichiers à enregistrer après l’installation du package : l'un de nuspec, nupkg, ou nuspec;nupkg.

  • -PackagesDirectory

    Comme pour OutputDirectory. Obligatoire lors de la restauration avec un fichier packages.config, sauf si OutputDirectory ou SolutionDirectory est utilisé.

  • -Project2ProjectTimeOut

    Délai d’expiration en secondes pour la résolution des références de projet à projet.

  • -Recursive

    (4.0+) Restaure tous les projets de référence pour les projets UWP et .NET Core. Ne s’applique pas aux projets à l’aide de packages.config.

  • -RequireConsent

    Vérifie que la restauration des packages est activée avant de télécharger et d’installer les packages. Pour des informations, consultez Restauration de package.

  • -SolutionDirectory

    Spécifie le dossier de solution. Non valide lors de la restauration de packages pour une solution. Obligatoire lors de la restauration avec un fichier packages.config, sauf si PackagesDirectory ou OutputDirectory est utilisé.

  • -Source

    Spécifie la liste des sources de package (en tant qu’URL) à utiliser pour la restauration. Si elle est omise, la commande utilise les sources fournies dans les fichiers de configuration, consultez Configuration du comportement de NuGet. Utilisez un point-virgule pour séparer les entrées de liste.

  • -UseLockFile

    Permet au fichier de verrouillage du projet d'être généré et utilisé avec la restauration.

  • -Verbosity [normal|quiet|detailed]

    Spécifie la quantité de détails affichée dans la sortie : normal (la valeur par défaut), quiet ou detailed.

Consultez également Variables d’environnement.

Notes

La commande de restauration effectue les étapes suivantes :

  1. Déterminez le mode de fonctionnement de la commande de restauration.

    type de fichier projectPath Comportement
    Solution (dossier) NuGet recherche un fichier .sln et l'utilise s'il est trouvé, sinon il émet une erreur. (SolutionDir)\.nuget est utilisé comme dossier de départ.
    Fichier .sln Restaurer des packages identifiés par la solution ; génère une erreur si -SolutionDirectory est utilisé. $(SolutionDir)\.nuget est utilisé comme dossier de départ.
    packages.config ou fichier projet Restaurer les packages répertoriés dans le fichier, résolvant et installant les dépendances.
    Autre type de fichier Le fichier est supposé être un fichier .sln comme ci-dessus ; s’il ne s’agit pas d’une solution, NuGet génère une erreur.
    (projectPath non spécifié)
    • NuGet recherche les fichiers de solution dans le dossier actuel. Si un seul fichier est trouvé, celui-ci est utilisé pour restaurer des packages ; si plusieurs solutions sont trouvées, NuGet génère une erreur.
    • S’il n’existe aucun fichier solution, NuGet recherche un packages.config et l'utilise pour restaurer les packages.
    • Si aucune solution ou fichier packages.config n’est trouvé, NuGet génère une erreur.
  2. Déterminez le dossier des packages à l’aide de l’ordre de priorité suivant (NuGet génère une erreur si aucun de ces dossiers n’est trouvé) :

    • Le dossier spécifié avec -PackagesDirectory.
    • La valeur repositoryPath dans Nuget.Config
    • Le dossier spécifié avec -SolutionDirectory
    • $(SolutionDir)\packages
  3. Lors de la restauration de packages pour une solution, NuGet effectue les opérations suivantes :

    • Charge le fichier solution.
    • Restaurer les packages au niveau de la solution répertoriés dans $(SolutionDir)\.nuget\packages.config dans le dossier packages.
    • Restaurer les packages listés dans $(ProjectDir)\packages.config dans le dossier packages. Pour chaque package spécifié, restaurez le package en parallèle, sauf si -DisableParallelProcessing est spécifié.

Exemples

# Restore packages for a solution file
nuget restore a.sln

# Restore packages for a solution file, using MSBuild version 14.0 to load the solution and its project(s)
nuget restore a.sln -MSBuildVersion 14

# Restore packages for a project's packages.config file, with the packages folder at the parent
nuget restore proj1\packages.config -PackagesDirectory ..\packages

# Restore packages for the solution in the current folder, specifying package sources
nuget restore -source "https://api.nuget.org/v3/index.json;https://www.myget.org/F/nuget"