Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Este artículo se aplica a: ✔️ SDK de .NET 6 y versiones posteriores
Nombre
dotnet nuget push - Inserta un paquete en el servidor y lo publica.
Sinopsis
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
Descripción
El dotnet nuget push comando inserta un paquete en el servidor y lo publica. El comando push usa los detalles del servidor y las credenciales que se encuentran en el archivo de configuración de NuGet del sistema o en la cadena de archivos de configuración. Para obtener más información sobre los archivos de configuración, consulte Configuración del comportamiento de NuGet. La configuración predeterminada de NuGet se obtiene cargando %AppData%\NuGet\NuGet.config (Windows) o $HOME/.nuget/NuGet/NuGet/NuGet.Config (Linux/macOS), cargando cualquier nuget.config o .nuget\nuget.config a partir de la raíz de la unidad y finalizando en el directorio actual.
El comando inserta un paquete existente. No crea un paquete. Para crear un paquete, use dotnet pack.
Estructura jerárquica de carpetas
Este comando puede almacenar paquetes en una estructura jerárquica de carpetas, que se recomienda optimizar el rendimiento. Almacena paquetes en una estructura jerárquica de carpetas al publicar en una carpeta local (fuente), como nuget add si ya hay al menos un paquete en la fuente que se encuentra en una estructura jerárquica de carpetas. Si la fuente tiene un paquete estructurado de carpetas jerárquicas ya en ella, dotnet nuget push respeta esa estructura. Por lo tanto, si desea publicar en una fuente local mediante la CLI de .NET en lugar de la CLI de NuGet:
- Antes de publicar el primer paquete, vaya a la carpeta paquetes globales, en %userprofile%.nuget\packages y seleccione la carpeta raíz de un identificador de paquete. Puede ser cualquier paquete que no forme parte de un marco, como .NET standard o ASP.NET.
- Copie la carpeta del paquete seleccionada en la carpeta raíz de la fuente local.
- Use
dotnet nuget pushpara publicar el paquete en la fuente local. - Ahora puede eliminar la carpeta que copió anteriormente y puede usar
dotnet nuget pushlibremente para publicar en la fuente local.
Como alternativa, use la CLI de NuGet para el primer paquete y, a continuación, puede usar dotnet nuget push para el resto. Para obtener más información, consulte Fuentes locales.
Argumentos
ROOTEspecifica la ruta de acceso del archivo al paquete que se va a insertar.
Opciones
--allow-insecure-connectionsPermite insertar en orígenes HTTP (no seguros).
-d|--disable-bufferingDeshabilita el almacenamiento en búfer al insertar en un servidor HTTP(S) para reducir el uso de memoria.
--force-english-outputObliga a la aplicación a ejecutarse mediante una referencia cultural invariable basada en inglés.
-
-?|-h|--helpImprime una descripción de cómo usar el comando .
-
--interactivePermite que el comando se detenga y espere una entrada o una acción del usuario. Por ejemplo, para completar la autenticación.
-k|--api-key <API_KEY>Clave de API para el servidor.
-n|--no-symbolsNo inserta símbolos (incluso si están presentes).
--no-service-endpointNo anexa "api/v2/package" a la dirección URL de origen.
-s|--source <SOURCE>Especifica la dirección URL del servidor. NuGet identifica un origen de carpeta UNC o local y simplemente copia el archivo allí en lugar de insertarlo mediante HTTP.
Importante
A partir de NuGet 3.4.2, este es un parámetro obligatorio a menos que el archivo de configuración de NuGet especifique un
DefaultPushSourcevalor. Para más información, vea Configuring NuGet behavior (Configuración del comportamiento de NuGet).--skip-duplicateAl insertar varios paquetes en un servidor HTTP(S), trata cualquier respuesta de conflicto 409 como una advertencia para que otras inserciones puedan continuar.
-sk|--symbol-api-key <API_KEY>Clave de API para el servidor de símbolos.
-ss|--symbol-source <SOURCE>Especifica la dirección URL del servidor de símbolos.
-t|--timeout <TIMEOUT>Especifica el tiempo de espera para insertar en un servidor en segundos. El valor predeterminado es de 300 segundos (5 minutos). Al especificar 0 se aplica el valor predeterminado.
--configfileArchivo de configuración de NuGet (nuget.config) que se va a usar. Si se especifica, solo se usará la configuración de este archivo. Si no se especifica, se utilizará la jerarquía de archivos de configuración del directorio actual. Para más información, consulte Configuraciones comunes de NuGet.
Ejemplos
Inserte foo.nupkg en el origen de inserción predeterminado especificado en el archivo de configuración de NuGet mediante una clave de API:
dotnet nuget push foo.nupkg -k 4003d786-cc37-4004-bfdf-c4f3e8ef9b3aInserte foo.nupkg en el servidor nuGet oficial y especifique una clave de API:
dotnet nuget push foo.nupkg -k 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -s https://api.nuget.org/v3/index.jsonInserte foo.nupkg en el origen de inserción
https://customsourcepersonalizado y especifique una clave de API:dotnet nuget push foo.nupkg -k 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -s https://customsource/Inserte foo.nupkg en el origen de inserción predeterminado especificado en el archivo de configuración de NuGet:
dotnet nuget push foo.nupkgInserte foo.symbols.nupkg en el origen de símbolos predeterminado:
dotnet nuget push foo.symbols.nupkgInserte foo.nupkg en el origen de inserción predeterminado especificado en el archivo de configuración de NuGet, con un tiempo de espera de 360 segundos:
dotnet nuget push foo.nupkg --timeout 360Inserte todos los archivos .nupkg en el directorio actual en el origen de inserción predeterminado especificado en el archivo de configuración de NuGet:
dotnet nuget push "*.nupkg"Inserte todos los archivos .nupkg en el origen de inserción predeterminado especificado en el archivo de configuración de NuGet, incluso si un servidor HTTP(S) devuelve una respuesta de conflicto 409:
dotnet nuget push "*.nupkg" --skip-duplicateInserte todos los archivos .nupkg en el directorio actual en un directorio de fuente local:
dotnet nuget push "*.nupkg" -s c:\mydirPara insertar en Azure Artifacts, consulte la documentación de inserción de Azure Artifacts.