Dela via


dotnet nuget push

Den här artikeln gäller för: ✔️ .NET 6 SDK och senare versioner

Namn

dotnet nuget push – Skickar ett paket till servern och publicerar det.

Sammanfattning

dotnet nuget push [<ROOT>] [--allow-insecure-connections] [-d|--disable-buffering] [--force-english-output]
    [--interactive] [-k|--api-key <API_KEY>] [-n|--no-symbols]
    [--no-service-endpoint] [-s|--source <SOURCE>] [--skip-duplicate]
    [-sk|--symbol-api-key <API_KEY>] [-ss|--symbol-source <SOURCE>]
    [-t|--timeout <TIMEOUT>]
    [--configfile <FILE>]

dotnet nuget push -h|--help

Beskrivning

Kommandot dotnet nuget push skickar ett paket till servern och publicerar det. Push-kommandot använder server- och autentiseringsuppgifter som finns i systemets NuGet-konfigurationsfil eller kedja av konfigurationsfiler. Mer information om konfigurationsfiler finns i Konfigurera NuGet-beteende. NuGets standardkonfiguration hämtas genom inläsning av%AppData%\NuGet\NuGet.config (Windows) eller $HOME/.nuget/NuGet/NuGet.Config (Linux/macOS) och läser sedan in allanuget.config eller .nuget-\nuget.config från roten på enheten och slutar i den aktuella katalogen.

Kommandot push-överför ett befintligt paket. Det skapar inget paket. Om du vill skapa ett paket använder du dotnet pack.

Hierarkisk mappstruktur

Det här kommandot kan lagra paket i en hierarkisk mappstruktur, vilket rekommenderas för att optimera prestanda. Den lagrar paket i en hierarkisk mappstruktur vid publicering till en lokal mapp (feed), som nuget add gör, om det redan finns minst ett paket i flödet som finns i en hierarkisk mappstruktur. Om feeden redan har ett hierarkiskt mappstrukturerat paket, dotnet nuget push respekteras den strukturen. Så om du vill publicera till en lokal feed med hjälp av .NET CLI i stället för NuGet CLI:

  • Innan du publicerar det första paketet går du till mappen globala paket på %userprofile%.nuget\packages och väljer rotmappen för ett paket-ID. Det kan vara alla paket som inte ingår i ett ramverk, till exempel .NET Standard eller ASP.NET.
  • Kopiera den valda paketmappen till rotmappen för den lokala feeden.
  • Använd dotnet nuget push för att publicera paketet i den lokala feeden.
  • Nu kan du ta bort mappen som du tidigare kopierade i och du kan fritt använda dotnet nuget push för att publicera till din lokala feed.

Du kan också använda NuGet CLI för det första paketet och sedan använda dotnet nuget push för resten. Mer information finns i Lokala feeds.

Argumentpunkter

  • ROOT

    Anger filsökvägen till paketet som ska push-överföras.

Alternativ

  • --allow-insecure-connections

    Tillåter push-överföring till HTTP-källor (osäker).

  • -d|--disable-buffering

    Inaktiverar buffring vid push-överföring till en HTTP(S)-server för att minska minnesanvändningen.

  • --force-english-output

    Tvingar programmet att köras med hjälp av en invariant, engelskbaserad kultur.

  • -?|-h|--help

    Skriver ut en beskrivning av hur du använder kommandot.

  • --interactive

    Tillåter att kommandot stoppar och väntar på användarens indata eller åtgärd. Till exempel för att slutföra autentiseringen. Tillgänglig sedan .NET Core 3.0 SDK.

  • -k|--api-key <API_KEY>

    API-nyckeln för servern.

  • -n|--no-symbols

    Push-symboler (även om de finns).

  • --no-service-endpoint

    Lägger inte till "api/v2/package" i käll-URL:en.

  • -s|--source <SOURCE>

    Anger serverns URL. NuGet identifierar en UNC- eller lokal mappkälla och kopierar helt enkelt filen där i stället för att skicka den med HTTP.

    Viktigt!

    Från och med NuGet 3.4.2 är detta en obligatorisk parameter om inte NuGet-konfigurationsfilen anger ett DefaultPushSource värde. Mer information finns i Konfigurera NuGet-beteende.

  • --skip-duplicate

    När du skickar flera paket till en HTTP(S)-server behandlar alla 409 konfliktsvar som en varning så att andra push-meddelanden kan fortsätta.

  • -sk|--symbol-api-key <API_KEY>

    API-nyckeln för symbolservern.

  • -ss|--symbol-source <SOURCE>

    Anger symbolserverns URL.

  • -t|--timeout <TIMEOUT>

    Anger tidsgränsen för push-överföring till en server i sekunder. Standardvärdet är 300 sekunder (5 minuter). Om du anger 0 tillämpas standardvärdet.

  • --configfile

    NuGet-konfigurationsfilen (nuget.config) som ska användas. Om det anges används endast inställningarna från den här filen. Om det inte anges används hierarkin för konfigurationsfiler från den aktuella katalogen. Mer information finns i Vanliga NuGet-konfigurationer.

Exempel

  • Skicka foo.nupkg till standard push-källan som anges i NuGet-konfigurationsfilen med hjälp av en API-nyckel:

    dotnet nuget push foo.nupkg -k 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a
    
  • Skicka foo.nupkg till den officiella NuGet-servern och ange en API-nyckel:

    dotnet nuget push foo.nupkg -k 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -s https://api.nuget.org/v3/index.json
    
  • Skicka foo.nupkg till den anpassade push-källan https://customsourceoch ange en API-nyckel:

    dotnet nuget push foo.nupkg -k 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -s https://customsource/
    
  • Push-överför foo.nupkg till standard push-källan som anges i NuGet-konfigurationsfilen:

    dotnet nuget push foo.nupkg
    
  • Push-överför foo.symbols.nupkg till standardsymbolkällan:

    dotnet nuget push foo.symbols.nupkg
    
  • Skicka foo.nupkg till standard push-källan som anges i NuGet-konfigurationsfilen med en tidsgräns på 360 sekunder:

    dotnet nuget push foo.nupkg --timeout 360
    
  • Push-överför alla .nupkg-filer i den aktuella katalogen till standard push-källan som anges i NuGet-konfigurationsfilen:

    dotnet nuget push "*.nupkg"
    
  • Push-överför alla .nupkg-filer till standard push-källan som anges i NuGet-konfigurationsfilen, även om ett 409-konfliktsvar returneras av en HTTP(S)-server:

    dotnet nuget push "*.nupkg" --skip-duplicate
    
  • Skicka alla .nupkg-filer i den aktuella katalogen till en lokal feedkatalog:

    dotnet nuget push "*.nupkg" -s c:\mydir
    
  • Information om hur du push-överför till Azure Artifacts finns i Azure Artifacts push-dokumentation.