La siguiente diferencia cubre cómo los comandos npm i y npm ci son diferentes entre sí y su funcionamiento. El npm, que se denomina administrador de paquetes de Nodes, se usa para administrar los módulos necesarios para nuestra aplicación.
npm i: npm i (o npm install) se usa para instalar todas las dependencias o devDependencies desde un archivo package.json .
Sintaxis:
npm install "package-name" // OR npm i "package-name"
npm ci: CI significa instalación limpia y npm ci se usa para instalar todas las dependencias de versión exactas o devDependencies desde un archivo package-lock.json.
Sintaxis:
npm ci
Las diferencias entre npm i y npm ci son:
S. No. |
npm yo |
npm ci |
1. | Instala un paquete y todas sus dependencias. | Generalmente se utiliza para instalar dependencias. |
2. | Puede escribir en package.json o en package-lock.json. | Nunca escribe en package.json o package-lock.json. |
3. | Se pueden agregar dependencias individuales con este comando. | No se pueden agregar dependencias individuales con este comando. |
4. | Es más lento en la ejecución. | Es más rápido en ejecución. |
5. | Si alguna dependencia no está en package-lock.json, este comando la agregará. | Si falta alguna dependencia o tiene versiones incompatibles, entonces npm ci generará un error. |
6. | Si un node_modules ya está presente, este comando no cambia nada. | Si un node_modules ya está presente, se eliminará automáticamente antes de que npm ci comience su instalación. |
7. | Puede instalar paquetes globales. | No puede instalar paquetes globales. |
8. | El nombre del paquete npm i se usa para escribir en package.json para agregar o actualizar dependencias. | No se puede usar para escribir en package.json. |
9. | npm puedo escribir en package-lock.json para bloquear la versión de algunas dependencias. | No puede escribir en package-lock.json. |
10 | Se usa durante el desarrollo después de realizar cambios que actualizan la lista de dependencias. | Se utiliza para la compilación determinista y repetible. |
Publicación traducida automáticamente
Artículo escrito por aktmishra143 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA