O Que É package-lock.json?
package-lock.json explicado, incluindo o que faz e como importa no CI/CD.
package-lock.json registra a árvore de dependências exata e totalmente resolvida de um projeto npm.
O que é
Ele trava cada dependência direta e transitiva em uma versão específica e um hash de integridade, para que as instalações sejam reproduzíveis entre máquinas.
Por que importa no CI/CD
O CI usa npm ci, que instala estritamente a partir do package-lock.json e falha se ele estiver dessincronizado com o package.json. Fazer o commit do lockfile é o que torna os builds de CI determinísticos.
Principais conclusões
- package-lock.json fixa a árvore de dependências exata.
npm ciinstala estritamente a partir dele.- Faça o commit dele para um CI reproduzível.