dotnet restore

Cet article s’applique à : ✔️ le kit de développement logiciel (SDK) .net Core 2,1 et versions ultérieures

Nom

dotnet restore : Restaure les dépendances et les outils d’un projet.

Synopsis

dotnet restore [<ROOT>] [--configfile <FILE>] [--disable-parallel]
    [-f|--force] [--force-evaluate] [--ignore-failed-sources]
    [--interactive] [--lock-file-path <LOCK_FILE_PATH>] [--locked-mode]
    [--no-cache] [--no-dependencies] [--packages <PACKAGES_DIRECTORY>]
    [-r|--runtime <RUNTIME_IDENTIFIER>] [-s|--source <SOURCE>]
    [--use-lock-file] [-v|--verbosity <LEVEL>]

dotnet restore -h|--help

Description

La commande dotnet restore utilise NuGet pour restaurer les dépendances, ainsi que les outils spécifiques aux projets qui sont spécifiés dans le fichier projet. dans la plupart des cas, vous n’avez pas besoin d’utiliser explicitement la dotnet restore commande, car une restauration de NuGet est exécutée implicitement si nécessaire lorsque vous exécutez les commandes suivantes :

parfois, il peut être gênant d’exécuter la restauration de NuGet implicite avec ces commandes. Par exemple, certains systèmes automatisés, comme les systèmes de génération, doivent appeler explicitement dotnet restore pour contrôler quand la restauration a lieu afin de pouvoir contrôler l’utilisation du réseau. pour empêcher la restauration de NuGet implicite, vous pouvez utiliser l' --no-restore indicateur avec l’une de ces commandes pour désactiver la restauration implicite.

Spécifier les flux

Pour restaurer les dépendances, NuGet a besoin des flux où sont situés les packages. Les flux sont généralement fournis via le fichier de configuration nuget.config. Un fichier de configuration par défaut est fourni lorsque le kit de développement logiciel (SDK) .NET est installé. Pour spécifier des flux supplémentaires, effectuez l’une des opérations suivantes :

Vous pouvez substituer les flux de nuget.config avec l' -s option.

Pour plus d’informations sur l’utilisation des flux authentifiés, consultez utilisation de packages à partir de flux authentifiés.

Dossier de packages globaux

Pour les dépendances, vous pouvez spécifier l’emplacement des packages restaurés pendant l’opération de restauration à l’aide de l’argument --packages. Si aucune valeur n’est spécifiée, le cache du package NuGet par défaut est utilisé. Il se trouve dans le répertoire .nuget/packages, situé dans le répertoire de base de l’utilisateur, sur tous les systèmes d’exploitation. Par exemple, /home/user1 sur Linux ou C:\Users\user1 sur Windows.

outils spécifiques à Project

Pour les outils spécifiques au projet, dotnet restore commence par restaurer le package dans lequel l’outil est empaqueté, puis il restaure les dépendances de l’outil, comme spécifié dans son fichier projet.

Différences dans nuget.config

Le comportement de la commande dotnet restore est affecté par les paramètres du fichier nuget.config, s’il est présent. Par exemple, si vous définissez globalPackagesFolder dans nuget.config, les packages NuGet restaurés sont placés dans le dossier spécifié. Cette méthode permet également de spécifier l’option --packages sur la commande dotnet restore. Pour plus d’informations, consultez Informations de référence sur nuget.config.

Trois paramètres spécifiques sont ignorés par dotnet restore :

  • bindingRedirects

    les redirections de liaison ne fonctionnent pas avec les <PackageReference> éléments et .net ne prend en charge que <PackageReference> les éléments des packages NuGet.

  • Solution

    ce paramètre est Visual Studio spécifique et ne s’applique pas à .net. .net n’utilise pas de packages.config fichier et utilise <PackageReference> à la place des éléments pour NuGet packages.

  • trustedSigners

    La prise en charge de la vérification de signature de package multiplateforme a été ajoutée au kit de développement logiciel (SDK) .NET 5.0.100.

Téléchargements de manifeste de charge de travail

Lorsque vous exécutez cette commande, elle lance un téléchargement asynchrone en arrière-plan de manifestes de publicité pour les charges de travail. Si le téléchargement est toujours en cours d’exécution à la fin de cette commande, le téléchargement s’arrête. Pour plus d’informations, consultez manifestes de publication.

Arguments

  • ROOT

    Chemin facultatif du fichier projet à restaurer.

Options

  • --configfile <FILE>

    fichier de configuration de NuGet (nuget.config) à utiliser. Si ce paramètre est spécifié, seuls les paramètres de ce fichier seront utilisés. S’il n’est pas spécifié, la hiérarchie des fichiers de configuration du répertoire actif sera utilisée. pour plus d’informations, consultez Common NuGet configurations.

  • --disable-parallel

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

  • --force

    Force la résolution de toutes les dépendances même si la dernière restauration a réussi. Définir cet indicateur revient à supprimer le fichier project.assets.json.

  • --force-evaluate

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

  • -?|-h|--help

    Imprime une description de l’utilisation de la commande.

  • --ignore-failed-sources

    N’avertit en cas d’échec des sources que si des packages répondent aux exigences de versions.

  • --interactive

    Permet à la commande de s’arrêter et d’attendre une action ou une entrée utilisateur. Par exemple, pour effectuer une authentification.

  • --lock-file-path <LOCK_FILE_PATH>

    Emplacement de sortie où le fichier de verrouillage de projet est écrit. Par défaut, il s’agit dePROJECT_ROOT\packages.lock.js.

  • --locked-mode

    N’autorise pas la mise à jour du fichier de verrouillage de projet.

  • --no-cache

    Spécifie de ne pas mettre en cache les requêtes HTTP.

  • --no-dependencies

    En cas de restauration d’un projet avec des références entre projets (P2P), restaure le projet racine et non les références.

  • --packages <PACKAGES_DIRECTORY>

    Spécifie le répertoire des packages restaurés.

  • -r|--runtime <RUNTIME_IDENTIFIER>

    Spécifie un runtime pour la restauration du package. Cela permet de restaurer les packages des runtimes qui ne sont pas explicitement listés dans la balise <RuntimeIdentifiers> du fichier .csproj. Pour connaître les identificateurs de runtime, consultez le catalogue des identificateurs de runtime. Fournissez plusieurs identificateurs de runtime en spécifiant cette option plusieurs fois.

  • -s|--source <SOURCE>

    spécifie l’URI de la source du package NuGet à utiliser pendant l’opération de restauration. Ce paramètre remplace toutes les sources spécifiées dans les fichiers nuget.config. Vous pouvez spécifier plusieurs sources en spécifiant cette option plusieurs fois.

  • --use-lock-file

    Active la génération et l’utilisation du fichier de verrouillage de projet avec Restore.

  • -v|--verbosity <LEVEL>

    Définit le niveau de détail de la commande. Les valeurs autorisées sont q[uiet], m[inimal], n[ormal], d[etailed] et diag[nostic]. La valeur par défaut est minimal. Pour plus d'informations, consultez LoggerVerbosity.

Exemples

  • Restaurez des dépendances et des outils pour le projet se trouvant dans le répertoire actif :

    dotnet restore
    
  • Restaurez des dépendances et des outils pour le projet app1 se trouvant à l’emplacement donné :

    dotnet restore ./projects/app1/app1.csproj
    
  • Restaurez les dépendances et les outils pour le projet dans le répertoire actif à l’aide du chemin d’accès de fichier fourni comme source :

    dotnet restore -s c:\packages\mypackages
    
  • Restaurez les dépendances et les outils pour le projet dans le répertoire actif à l’aide des deux chemins d’accès de fichier fournis comme sources :

    dotnet restore -s c:\packages\mypackages -s c:\packages\myotherpackages
    
  • Restaurez les dépendances et les outils pour le projet dans le répertoire actif et affichez la sortie détaillée :

    dotnet restore --verbosity detailed