A través de la línes de comandos se pueden persistir las credenciales de acceso a un repositorio de NuGet de forma que no haya que introducirlas cada vez.
Estas credenciales se almacenan por defecto en %APPDATA%\Roaming\NuGet\NuGet.Config pero se puede especificar el fichero de configuración a utilizar.
El método básico sería, primero listar los repositorios remotos para saber cuáles hay configurados y cuál se quiere actualizar:
> Nuget sources
Después, elegir a qué fuente se le quieren añadir credenciales y ejecutar el siguiente comando:
> Nuget sources update -Name "Nombre del source" -UserName "usuario" -Password "password"
Esto persistirá de forma encriptada la contraseña asociada a esa fuente, de modo que NuGet pueda conectarse automáticamente.
Para usar un NuGet. Config personalizado (por ejemplo para distribuirlo junto a la solución con fuentes de paquetes diferentes de la estándar), hay que crear un nuevo fichero NuGet. Config en la ubicación que queremos con el siguiente contenido:
<?xml version="1.0" encoding="utf-8"?><configuration> <packageSources> <add key="nuget.org" value="https://www.nuget.org/api/v2/" /> </packageSources></configuration>
Después, ir a la carpeta donde hemos creado este fichero y añadir nuestro repositorio de paquetes:
> Nuget sources add -Name "NombreRepo" -Source "URL del repositorio" -UserName "usuario" -Password "password" -ConfigFile NuGet. Config
Si queremos modificar el usuario y/o la contraseña:
> Nuget sources update -Name "NombreRepo" -UserName "usuario" -Password "password" -ConfigFile NuGet. Config
Si queremos compartir este fichero con sus credenciales, al estar encriptado con la clave privada de cada máquina no se va a poder, pero para ello existe la posibilidad de almacenar la clave en texto plano (cuidado dónde se guarda esta información...) con la opción -StorePasswordInClearText.