Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makale şunlar için geçerlidir: ✔️ .NET 6 SDK ve sonraki sürümler
İsim
dotnet nuget push - Bir paketi sunucuya gönderir ve yayımlar.
Özet
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
Açıklama
komutu dotnet nuget push bir paketi sunucuya gönderir ve yayımlar. Anında iletme komutu, sistemin NuGet yapılandırma dosyasında veya yapılandırma dosyaları zincirinde bulunan sunucu ve kimlik bilgisi ayrıntılarını kullanır. Yapılandırma dosyaları hakkında daha fazla bilgi için bkz. NuGet Davranışını Yapılandırma. NuGet'in varsayılan yapılandırması ,%AppData%\NuGet\NuGet.config (Windows) veya $HOME/.nuget/NuGet/NuGet.Config (Linux/macOS) yüklenip sürücünün kökünden başlayıp geçerli dizinde biten nuget.config veya .nuget\nuget.config yüklenerek elde edilir.
komutu var olan bir paketi iter. Paket oluşturmaz. Paket oluşturmak için kullanın dotnet pack.
Hiyerarşik klasör yapısı
Bu komut, paketleri performansı iyileştirmek için önerilen hiyerarşik bir klasör yapısında depolayabilir. Akışta hiyerarşik klasör yapısında bulunan en az bir paket varsa, paketleri yerel bir klasöre (akış) nuget add yayımlarken hiyerarşik bir klasör yapısında depolar. Akışın içinde zaten hiyerarşik klasör yapılandırılmış bir paket varsa, dotnet nuget push bu yapıya saygı gösterir. Bu nedenle, NuGet CLI yerine .NET CLI kullanarak yerel bir akışta yayımlamak istiyorsanız:
- İlk paketi yayımlamadan önce.nuget\packages%userprofile% genel paketler klasörünüze gidin ve paket kimliğinin kök klasörünü seçin. .NET standardı veya ASP.NET gibi bir çerçevenin parçası olmayan herhangi bir paket olabilir.
- Seçili paket klasörünü yerel akışın kök klasörüne kopyalayın.
- Paketinizi yerel akışta yayımlamak için kullanın
dotnet nuget push. - Artık daha önce kopyaladığınız klasörü silebilir ve yerel akışınızda yayımlamak için ücretsiz olarak kullanabilirsiniz
dotnet nuget push.
Alternatif olarak, ilk paket için NuGet CLI kullanın, ardından geri kalanı için kullanabilirsiniz dotnet nuget push . Daha fazla bilgi için bkz. Yerel akışlar.
Tartışmalar
ROOTGönderilecek paketin dosya yolunu belirtir.
Seçenekler
--allow-insecure-connectionsHTTP kaynaklarına (güvenli olmayan) göndermeye izin verir.
-d|--disable-bufferingBellek kullanımını azaltmak için HTTP(S) sunucusuna gönderirken arabelleğe almayı devre dışı bırakır.
--force-english-outputUygulamayı sabit, İngilizce tabanlı bir kültür kullanarak çalışmaya zorlar.
-
-?|-h|--helpkomutunun nasıl kullanılacağına ilişkin bir açıklama yazdırır.
-
--interactiveKomutun durmasına ve kullanıcı girişini veya eylemini beklemesine izin verir. Örneğin, kimlik doğrulamasını tamamlamak için.
-k|--api-key <API_KEY>Sunucunun API anahtarı.
-n|--no-symbolsSimge göndermez (varsa bile).
--no-service-endpointKaynak URL'ye "api/v2/package" eklemez.
-s|--source <SOURCE>Sunucu URL'sini belirtir. NuGet bir UNC veya yerel klasör kaynağı tanımlar ve dosyayı HTTP kullanarak göndermek yerine oraya kopyalar.
Önemli
NuGet 3.4.2'den başlayarak, NuGet yapılandırma dosyası bir değer belirtmediği sürece bu zorunlu bir
DefaultPushSourceparametredir. Daha fazla bilgi için bkz . NuGet davranışını yapılandırma.--skip-duplicateBir HTTP(S) sunucusuna birden çok paket gönderirken, diğer göndermelerin devam edebilmesi için 409 Çakışma yanıtlarını uyarı olarak ele alır.
-sk|--symbol-api-key <API_KEY>Sembol sunucusunun API anahtarı.
-ss|--symbol-source <SOURCE>Sembol sunucusu URL'sini belirtir.
-t|--timeout <TIMEOUT>Bir sunucuya saniyeler içinde göndermek için zaman aşımını belirtir. Varsayılan değer 300 saniyedir (5 dakika). 0 belirtilmesi varsayılan değeri uygular.
--configfileKullanılacak NuGet yapılandırma dosyası (nuget.config). Belirtilirse, yalnızca bu dosyadaki ayarlar kullanılır. Belirtilmezse, geçerli dizindeki yapılandırma dosyalarının hiyerarşisi kullanılır. Daha fazla bilgi için bkz . Yaygın NuGet Yapılandırmaları.
Örnekler
Api anahtarı kullanarak foo.nupkg dosyasını NuGet yapılandırma dosyasında belirtilen varsayılan gönderme kaynağına gönderin:
dotnet nuget push foo.nupkg -k 4003d786-cc37-4004-bfdf-c4f3e8ef9b3aFoo.nupkg dosyasını resmi NuGet sunucusuna göndererek bir API anahtarı belirtin:
dotnet nuget push foo.nupkg -k 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -s https://api.nuget.org/v3/index.jsonFoo.nupkg dosyasını özel gönderme kaynağına
https://customsourcegöndererek bir API anahtarı belirtin:dotnet nuget push foo.nupkg -k 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -s https://customsource/Foo.nupkg dosyasını NuGet yapılandırma dosyasında belirtilen varsayılan gönderme kaynağına gönder:
dotnet nuget push foo.nupkgFoo.symbols.nupkg dosyasını varsayılan sembol kaynağına gönder:
dotnet nuget push foo.symbols.nupkgFoo.nupkg dosyasını NuGet yapılandırma dosyasında belirtilen varsayılan gönderme kaynağına 360 saniyelik zaman aşımıyla gönder:
dotnet nuget push foo.nupkg --timeout 360Geçerli dizindeki tüm .nupkg dosyalarını NuGet yapılandırma dosyasında belirtilen varsayılan gönderme kaynağına gönder:
dotnet nuget push "*.nupkg"Http(S) sunucusu tarafından 409 Çakışma yanıtı döndürülse bile tüm .nupkg dosyalarını NuGet yapılandırma dosyasında belirtilen varsayılan gönderme kaynağına gönder:
dotnet nuget push "*.nupkg" --skip-duplicateGeçerli dizindeki tüm .nupkg dosyalarını yerel akış dizinine gönder:
dotnet nuget push "*.nupkg" -s c:\mydirAzure Artifacts'e gönderme için bkz. Azure Artifacts'in gönderme belgeleri.