push 命令 (NuGet CLI)

适用于:包发布 • 支持的版本:全部;nuget.org 则需 4.1.0 及以上版本

重要

若要将包推送到 nuget.org,则须使用可实现所需 NuGet 协议的 nuget.exe v4.1.0 及以上版本。

将包推送到包源并将其发布。

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 开始,此参数为必需的参数,除非 NuGet.Config 文件指定了 DefaultPushSource 值(请参阅配置 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