web-dev-qa-db-fra.com

Est-ce que package-lock.json devrait également être publié?

npm 5 introduit package-lock.json , dont la documentation est ici .

Il indique que le fichier est destiné à être inclus avec le contrôle de version, donc toute personne clonant votre package et l'installant aura les mêmes versions de dépendance. En d'autres termes, vous ne devez pas l'ajouter à votre fichier . Gitignore .

Ce qu'il n'indique pas, c'est si le fichier est destiné à être inclus dans un package publié. Cette question pourrait être reformulée comme suit: package-lock.json doit-il être inclus dans .npmignore?

22
wybe

Il ne peut pas être publié.

De la documentation npm:

Un détail clé à propos de package-lock.json est qu'il ne peut pas être publié , et il sera ignoré s'il est trouvé ailleurs que dans le paquetage toplevel

Voir la documentation package-lock.json sur docs.npmjs.com .

Cependant, vous devez valider votre package-lock.json à git selon la documentation .

Ce fichier est destiné à être validé dans les référentiels sources

d'où le message commun présenté par npm:

created a lockfile as package-lock.json. You should commit this file.

EDIT: Une explication plus détaillée peut être trouvée ici .

20
Peter Reid