dotnet restore

Tento článek se týká: ✔️ .NET Core 3.1 SDK a novějších verzí

Name

dotnet restore – Obnoví závislosti a nástroje projektu.

Synopse

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

Příkaz dotnet restore používá NuGet k obnovení závislostí a také nástrojů specifických pro projekt, které jsou zadané v souboru projektu. Ve většině případů nemusíte příkaz explicitně používat dotnet restore , protože obnovení NuGet se v případě potřeby spouští implicitně, když spustíte následující příkazy:

Někdy může být nepohodlné spustit implicitní obnovení NuGet pomocí těchto příkazů. Například některé automatizované systémy, jako jsou systémy sestavení, musí explicitně volat dotnet restore , aby bylo možné řídit, kdy k obnovení dojde, aby mohly řídit využití sítě. Pokud chcete implicitní obnovení NuGet zabránit, můžete implicitní obnovení zakázat pomocí příznaku --no-restore s libovolným z těchto příkazů.

Poznámka

Ověření podepsaného balíčku během operací obnovení vyžaduje kořenové úložiště certifikátů, které je platné pro podepisování kódu i pro časové razítko. Podrobnosti najdete v tématu Ověření podepsaného balíčku NuGet .

Zadání informačních kanálů

K obnovení závislostí potřebuje NuGet informační kanály, ve kterých se balíčky nacházejí. Informační kanály se obvykle poskytují prostřednictvím konfiguračního souborunuget.config . Při instalaci sady .NET SDK je k dispozici výchozí konfigurační soubor. Pokud chcete zadat další informační kanály, proveďte jeden z následujících kroků:

Informační kanály nuget.config můžete přepsat pomocí -s možnosti .

Informace o používání ověřených informačních kanálů najdete v tématu Využívání balíčků z ověřených informačních kanálů.

Globální složka balíčků

U závislostí můžete pomocí argumentu --packages určit umístění obnovených balíčků během operace obnovení. Pokud není zadána, použije se výchozí mezipaměť balíčků NuGet, která se nachází v .nuget/packages adresáři v domovském adresáři uživatele ve všech operačních systémech. Například /home/user1 v Linuxu nebo C:\Users\user1 ve Windows.

Nástroje specifické pro projekt

U nástrojů specifických pro projekt nejprve obnoví balíček, dotnet restore ve kterém je nástroj zabalen, a pak pokračuje obnovením závislostí nástroje, jak je uvedeno v souboru projektu.

rozdíly nuget.config

Chování dotnet restore příkazu je ovlivněno nastavením v souboru nuget.config , pokud je k dispozici. Například nastavení globalPackagesFolder vnuget.config umístí obnovené balíčky NuGet do zadané složky. Toto je alternativa k zadání --packages možnosti v dotnet restore příkazu. Další informace najdete v referenčních informacích knuget.config.

Existují tři konkrétní nastavení, která dotnet restore ignorují:

  • bindingRedirects

    Přesměrování vazeb nefunguje s <PackageReference> elementy a .NET podporuje <PackageReference> pouze elementy pro balíčky NuGet.

  • Řešení

    Toto nastavení je specifické pro Visual Studio a nevztahuje se na .NET. .NET nepoužívá packages.config soubor a místo toho používá <PackageReference> elementy pro balíčky NuGet.

  • trustedSigners

    V sadě .NET 5.0.100 SDK byla přidána podpora ověřování podpisů balíčků napříč platformami.

Stažení manifestu úloh

Když tento příkaz spustíte, zahájí asynchronní stahování manifestů reklamy pro úlohy na pozadí. Pokud je stahování po dokončení tohoto příkazu stále spuštěné, stahování se zastaví. Další informace najdete v tématu Manifesty reklamy.

Argumenty

  • ROOT

    Volitelná cesta k souboru projektu, který chcete obnovit.

Možnosti

  • --configfile <FILE>

    Konfigurační soubor NuGet (nuget.config), který se má použít. Pokud je zadáno, použijí se pouze nastavení z tohoto souboru. Pokud není zadán, použije se hierarchie konfiguračních souborů z aktuálního adresáře. Další informace najdete v tématu Běžné konfigurace NuGetu.

  • --disable-parallel

    Zakáže paralelní obnovení více projektů.

  • --force

    Vynutí vyřešení všech závislostí, i když bylo poslední obnovení úspěšné. Zadání tohoto příznaku je stejné jako odstranění souboru project.assets.json .

  • --force-evaluate

    Vynutí obnovení, aby se znovu vyhodnotily všechny závislosti, i když soubor zámku již existuje.

  • -?|-h|--help

    Vytiskne popis použití příkazu.

  • --ignore-failed-sources

    Upozorňovat pouze na zdroje, které selhaly, pokud existují balíčky splňující požadavek na verzi.

  • --interactive

    Umožňuje příkaz zastavit a čekat na vstup nebo akci uživatele. Například k dokončení ověřování.

  • --lock-file-path <LOCK_FILE_PATH>

    Výstupní umístění, kam se zapisuje soubor zámku projektu. Ve výchozím nastavení je to PROJECT_ROOT\packages.lock.json.

  • --locked-mode

    Nepovolujte aktualizaci souboru zámku projektu.

  • --no-cache

    Určuje, že se nebudou ukládat požadavky HTTP do mezipaměti.

  • --no-dependencies

    Při obnovování projektu pomocí odkazů P2P (project-to-project) obnovíte kořenový projekt, nikoli odkazy.

  • --packages <PACKAGES_DIRECTORY>

    Určuje adresář pro obnovené balíčky.

  • -r|--runtime <RUNTIME_IDENTIFIER>

    Určuje modul runtime pro obnovení balíčku. Používá se k obnovení balíčků pro moduly runtime, které nejsou explicitně uvedeny ve <RuntimeIdentifiers> značce v souboru .csproj . Seznam identifikátorů runtime (RID) najdete v katalogu RID.

  • -s|--source <SOURCE>

    Určuje identifikátor URI zdroje balíčku NuGet, který se má použít během operace obnovení. Toto nastavení přepíše všechny zdroje zadané v souborechnuget.config . Pokud tuto možnost zadáte vícekrát, můžete zadat více zdrojů.

  • --use-lock-file

    Umožňuje vygenerovat soubor zámku projektu a použít je k obnovení.

  • -v|--verbosity <LEVEL>

    Nastaví úroveň podrobností příkazu. Povolené hodnoty jsou q[uiet], m[inimal], n[ormal], d[etailed]a diag[nostic]. Výchozí formát je minimal. Další informace naleznete v tématu LoggerVerbosity.

Příklady

  • Obnovení závislostí a nástrojů pro projekt v aktuálním adresáři:

    dotnet restore
    
  • Obnovení závislostí a nástrojů pro projekt nalezených app1 v dané cestě:

    dotnet restore ./projects/app1/app1.csproj
    
  • Obnovte závislosti a nástroje pro projekt v aktuálním adresáři pomocí cesty k souboru zadané jako zdroj:

    dotnet restore -s c:\packages\mypackages
    
  • Obnovte závislosti a nástroje pro projekt v aktuálním adresáři pomocí dvou cest k souborům, které jsou k dispozici jako zdroje:

    dotnet restore -s c:\packages\mypackages -s c:\packages\myotherpackages
    
  • Obnovení závislostí a nástrojů pro projekt v aktuálním adresáři s podrobným výstupem:

    dotnet restore --verbosity detailed