push 命令 (NuGet CLI)

適用於: 套件發佈 • 支援的版本: 全部;nuget.org 需要 4.1.0+

重要

若要將套件推送至 nuget.org 您必須使用 nuget.exe v4.1.0+,這會實作必要的 NuGet 通訊協定

將套件推送至套件來源並加以發佈。

NuGet 的預設組態是透過載入 %AppData%\NuGet\NuGet.Config (Windows) 或 ~/.nuget/NuGet/NuGet.Config (Mac/Linux) 來取得,然後載入 Nuget.Config 從磁碟驅動器根目錄開始的任何或 .nuget\Nuget.Config 檔案,並結束於目前目錄 (請參閱 一般 NuGet 組態

使用方式

nuget push <packagePath> [options]

其中 <packagePath> 會識別要推送至伺服器的套件。

選項。

  • -ApiKey

    目標存放庫的 API 金鑰。 如果沒有,則會使用組態檔中指定的組態檔。

  • -ConfigFile

    要套用的 NuGet 組態檔。 如果未指定, %AppData%\NuGet\NuGet.Config 則會使用 (Windows) 或 ~/.nuget/NuGet/NuGet.Config~/.config/NuGet/NuGet.Config (Mac/Linux)。

  • -DisableBuffering

    在推送至 HTTP(s) 伺服器時停用緩衝,以減少記憶體使用量。 注意:使用此選項時,整合式 Windows 驗證 可能無法運作。

  • -ForceEnglishOutput

    (3.5+) 強制nuget.exe使用非變異的英文文化特性來執行。

  • -?|-help

    顯示命令的說明資訊。

  • -NonInteractive

    隱藏使用者輸入或確認的提示。

  • -NoServiceEndpoint

    不會附加 api/v2/packages 至來源 URL。

  • -NoSymbols

    (3.5+) 如果符號套件存在,則不會推送至符號伺服器。

  • -src|-Source

    指定伺服器 URL。 NuGet 會識別 UNC 或本機資料夾來源,並直接複製該處的檔案,而不會使用 HTTP 推送檔案。 此外,從 NuGet 3.4.2 開始,除非檔案指定 DefaultPushSource 值,否則NuGet.Config這是必要參數(請參閱設定 NuGet 行為)。

  • -SkipDuplicate

    (5.1+) 如果套件和版本已經存在,請略過它,並在推送中繼續進行下一個套件,如果有的話。 如果將封裝推送至 UNC 或本機資料夾來源,則會忽略此選項。

  • -SymbolSource

    指定符號伺服器 URL。

  • -SymbolApiKey

    (3.5+) 指定 中所 -SymbolSource指定URL的 API 金鑰。

  • -Timeout

    指定推送至伺服器的逾時,以秒為單位。 預設值為300秒(5分鐘)。

  • -Verbosity [normal|quiet|detailed]

    指定輸出中顯示的詳細資料量: normal (預設值), quietdetailed

另請參閱 環境變數

範例

nuget push foo.nupkg

nuget push foo.symbols.nupkg

nuget push foo.nupkg -Timeout 360

nuget push *.nupkg

nuget.exe push -source \\mycompany\repo\ mypackage.1.0.0.nupkg

nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -Source https://api.nuget.org/v3/index.json

nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a

nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://customsource/

:: In the example below -SkipDuplicate will skip pushing the package if package "Foo" version "5.0.2" already exists on NuGet.org
nuget push Foo.5.0.2.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://api.nuget.org/v3/index.json -SkipDuplicate