¿Cómo restaurar / restablecer la configuración de npm a los valores predeterminados?

85

He jugado con npm sety npm config setvarias veces, ahora quiero restablecer los valores predeterminados (una especie de restablecimiento de fábrica).

¿ npmProporciona un comando para hacer eso? o ¿Debo borrar todos los archivos de configuración manualmente y luego reinstalarlos?

Lo necesito una linux Centosy otra vez Windows 8.

¡Gracias por adelantado!

sombrero húmedo
fuente

Respuestas:

136

Para restablecer los valores predeterminados del usuario

Ejecute esto en la línea de comando (o git bash en Windows):

echo "" > $(npm config get userconfig)
npm config edit

Para restablecer los valores predeterminados globales

echo "" > $(npm config get globalconfig)
npm config --global edit

Si necesita sudo, ejecute esto en su lugar:

sudo sh -c 'echo "" > $(npm config get globalconfig)'
Ilan Frumer
fuente
Si necesita más información sobre cómo npm resuelve la configuración, consulte aquí: npmjs.org/doc/config.html
Ilan Frumer
funcionó muy bien gracias. Destruí mi configuración instalando sinopa :(
Daniel Lizik
Creo que el enlace actual a la documentación de configuración de npm es docs.npmjs.com/cli/config
rhand
37

Si ejecuta npm config edit, obtendrá un editor que muestra la configuración actual, y también una lista de opciones y sus valores predeterminados.

Pero no creo que haya un comando de 'reinicio'.

Robertklep
fuente
He eliminado solo la dirección, guardado y cerrado el archivo. Luego volví a abrir el archivo y se eliminó el registro de línea completo =
peter70
31

Por lo que vale, puede restablecer el valor predeterminado de una entrada de configuración con npm config delete <key>(o npm config rm <key>, pero el uso de npm config rmno se menciona en npm help config).

Ejemplo:

# set registry value
npm config set registry "https://skimdb.npmjs.com/registry"
# revert change back to default
npm config delete registry
David Silva
fuente
esto fue de gran ayuda
suku
Esto arruinó mi aplicación. Ahora aparece un error: No se puede encontrar el módulo 'config-chain'
Scuba Kay
La eliminación de la carpeta node_modules solucionó el error de la cadena de configuración.
Scuba Kay
¡Claramente, lo que estaba buscando después de que npm intenta extraerlo de un registro privado de forma predeterminada! Muchas gracias
Manu
Esto ayudó. Muchas gracias
riazosama
12

Si se trata de una sola propiedad, digamos que desea cambiar temporalmente algunos valores predeterminados, por ejemplo, deshabilitar la verificación de CA: puede hacerlo con

npm config set ca ""

Para volver a los valores predeterminados de esa configuración, simplemente

npm config delete ca

Para verificar, use npm config get ca.

jakub.g
fuente
En mi caso: npm config -g rm <key> "-g is for global"
Daniel Carpio Contreras
6

npm config editar

Abre el archivo de configuración en un editor. Utilice la bandera --global para editar la configuración global. ahora puede eliminar cualquier registro que no desee y guardar el archivo.

npm config list mostrará la lista de disponibles ahora.

Surendra Parchuru
fuente
2

La configuración se escribe en .npmrcarchivos, así que elimínela. NPM busca la configuración en este orden, la configuración en la siguiente sobrescribe la anterior. Por lo tanto, asegúrese de que haya una configuración global que generalmente se sobrescribe en cada proyecto y que se activa después de haber eliminado el archivo de configuración por proyecto. npm config listsiempre enumerará la configuración activa.

  1. archivo de configuración integrado de npm ( /path/to/npm/npmrc)
  2. archivo de configuración global ( $PREFIX/etc/npmrc)
  3. archivo de configuración por usuario ( $HOME/.npmrc)
  4. archivo de configuración por proyecto ( /path/to/my/project/.npmrc)
MortenB
fuente