Udostępnij za pomocą


dotnet nuget push (komenda do przesyłania pakietów NuGet)

Ten artykuł dotyczy: ✔️ zestaw .NET 6 SDK i nowsze wersje

Nazwa

dotnet nuget push — Wypycha pakiet do serwera i publikuje go.

Streszczenie

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

Opis

Polecenie dotnet nuget push wypycha pakiet do serwera i publikuje go. Polecenie wypychania używa szczegółów serwera i poświadczeń znajdujących się w pliku konfiguracji NuGet systemu lub łańcuchu plików konfiguracji. Aby uzyskać więcej informacji na temat plików konfiguracji, zobacz Konfigurowanie zachowania narzędzia NuGet. Domyślna konfiguracja narzędzia NuGet jest uzyskiwana przez ładowanie %AppData%\NuGet\NuGet.config (Windows) lub $HOME/.nuget/NuGet/NuGet.Config (Linux/macOS), a następnie ładowanie dowolnych nuget.config lub nuget\nuget.config rozpoczynających się od katalogu głównego i kończącego się w bieżącym katalogu.

Polecenie wypycha istniejący pakiet. Nie tworzy pakietu. Aby utworzyć pakiet, użyj polecenia dotnet pack.

Hierarchiczna struktura folderów

To polecenie może przechowywać pakiety w strukturze folderów hierarchicznych, co jest zalecane do optymalizacji wydajności. Przechowuje pakiety w strukturze folderów hierarchicznych podczas publikowania w folderze lokalnym (kanał informacyjny), podobnie jak nuget add w przypadku, gdy w strukturze folderów hierarchicznych znajduje się co najmniej jeden pakiet. Jeśli źródło danych ma już w nim hierarchiczny pakiet ustrukturyzowany folderu, dotnet nuget push uwzględnia strukturę. Dlatego jeśli chcesz opublikować w lokalnym kanale informacyjnym przy użyciu interfejsu wiersza polecenia platformy .NET zamiast interfejsu wiersza polecenia NuGet:

  • Przed opublikowaniem pierwszego pakietu przejdź do folderu pakietów globalnych w folderze%userprofile%.nuget\packages i wybierz folder główny identyfikatora pakietu. Może to być dowolny pakiet, który nie jest częścią struktury, takiej jak .NET Standard lub ASP.NET.
  • Skopiuj wybrany folder pakietu do folderu głównego lokalnego źródła danych.
  • Użyj dotnet nuget push polecenia , aby opublikować pakiet w lokalnym kanale informacyjnym.
  • Teraz możesz usunąć wcześniej skopiowany folder i można go swobodnie użyć dotnet nuget push do opublikowania w lokalnym kanale informacyjnym.

Alternatywnie użyj interfejsu wiersza polecenia NuGet dla pierwszego pakietu, a następnie możesz użyć dotnet nuget push go w pozostałej części. Aby uzyskać więcej informacji, zobacz Lokalne źródła danych.

Argumenty (w programowaniu)

  • ROOT

    Określa ścieżkę pliku do pakietu do wypchnięcia.

Opcje

  • --allow-insecure-connections

    Umożliwia wypychanie do źródeł HTTP (niezabezpieczone).

  • -d|--disable-buffering

    Wyłącza buforowanie podczas wypychania do serwera HTTP(S), aby zmniejszyć użycie pamięci.

  • --force-english-output

    Wymusza uruchomienie aplikacji przy użyciu niezmiennej kultury opartej na języku angielskim.

  • -?|-h|--help

    Wyświetla opis sposobu używania polecenia .

  • --interactive

    Umożliwia zatrzymanie polecenia i oczekiwanie na wprowadzenie lub działanie użytkownika. Na przykład w celu ukończenia uwierzytelniania.

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

    Klucz interfejsu API serwera.

  • -n|--no-symbols

    Nie wypycha symboli (nawet jeśli są obecne).

  • --no-service-endpoint

    Nie dołącza elementu "api/v2/package" do źródłowego adresu URL.

  • -s|--source <SOURCE>

    Określa adres URL serwera. NuGet identyfikuje źródło UNC lub folder lokalny i po prostu kopiuje tam plik zamiast wypychać go przy użyciu protokołu HTTP.

    Ważne

    Począwszy od nuGet 3.4.2, jest to obowiązkowy parametr, chyba że plik konfiguracji NuGet określa DefaultPushSource wartość. Aby uzyskać więcej informacji, zobacz Konfigurowanie zachowania narzędzia NuGet.

  • --skip-duplicate

    Podczas wypychania wielu pakietów do serwera HTTP(S) traktuje odpowiedź na konflikt 409 jako ostrzeżenie, aby inne wypchnięcia mogły kontynuować.

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

    Klucz interfejsu API dla serwera symboli.

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

    Określa adres URL serwera symboli.

  • -t|--timeout <TIMEOUT>

    Określa limit czasu wypychania do serwera w sekundach. Wartość domyślna to 300 sekund (5 minut). Określenie wartości 0 stosuje wartość domyślną.

  • --configfile

    Plik konfiguracji NuGet (nuget.config) do użycia. Jeśli zostanie określony, zostaną użyte tylko ustawienia z tego pliku. Jeśli nie zostanie określona, zostanie użyta hierarchia plików konfiguracji z bieżącego katalogu. Aby uzyskać więcej informacji, zobacz Typowe konfiguracje nuGet.

Przykłady

  • Wypchnij plik foo.nupkg do domyślnego źródła wypychania określonego w pliku konfiguracji NuGet przy użyciu klucza interfejsu API:

    dotnet nuget push foo.nupkg -k 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a
    
  • Wypchnij plik foo.nupkg do oficjalnego serwera NuGet, określając klucz interfejsu API:

    dotnet nuget push foo.nupkg -k 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -s https://api.nuget.org/v3/index.json
    
  • Wypchnij plik foo.nupkg do niestandardowego źródła https://customsourcewypychania , określając klucz interfejsu API:

    dotnet nuget push foo.nupkg -k 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -s https://customsource/
    
  • Wypchnij plik foo.nupkg do domyślnego źródła wypychania określonego w pliku konfiguracji NuGet:

    dotnet nuget push foo.nupkg
    
  • Wypchnij plik foo.symbols.nupkg do domyślnego źródła symboli:

    dotnet nuget push foo.symbols.nupkg
    
  • Wypchnij plik foo.nupkg do domyślnego źródła wypychania określonego w pliku konfiguracji NuGet z limitem czasu 360 sekund:

    dotnet nuget push foo.nupkg --timeout 360
    
  • Wypchnij wszystkie pliki nupkg w bieżącym katalogu do domyślnego źródła wypychania określonego w pliku konfiguracji NuGet:

    dotnet nuget push "*.nupkg"
    
  • Wypchnij wszystkie pliki nupkg do domyślnego źródła wypychania określonego w pliku konfiguracji NuGet, nawet jeśli odpowiedź powodująca konflikt 409 jest zwracana przez serwer HTTP(S):

    dotnet nuget push "*.nupkg" --skip-duplicate
    
  • Wypchnij wszystkie pliki nupkg w bieżącym katalogu do katalogu lokalnego źródła danych:

    dotnet nuget push "*.nupkg" -s c:\mydir
    
  • Aby wypchnąć do usługi Azure Artifacts, zobacz dokumentację wypychania usługi Azure Artifacts.