Détails
Dois-je livrer le fichier package-lock.json créé par npm 5 ?
[npm 5 a été publié aujourd'hui] (http://blog.npmjs.org/post/161081169345/v500) et l'une des nouvelles fonctionnalités comprend des installations déterministes avec la création d'un fichier package-lock.json
.
Ce fichier est-il censé être conservé dans le contrôle des sources ?
Je suppose qu'il est similaire à yarn.lock
et composer.lock
, qui sont tous deux censés être conservés dans le contrôle du code source.
1165
3
Oui,
package-lock.json
est destiné à être enregistré dans le contrôle de source. Si vous utilisez npm 5, vous verrez peut-être ceci sur la ligne de commande :created a lockfile as package-lock.json. You should commit this file.
Selonnpm help package-lock.json
:Ce fichier est destiné à être livré dans les dépôts de sources** et sert à plusieurs fins divers objectifs :
Un détail important concernant
package-lock.json
est qu'il ne peut pas être publié, et qu'il sera ignoré s'il est trouvé dans n'importe quel endroit. sera ignoré s'il est trouvé ailleurs que dans le paquet de niveau supérieur. Il partage format avec npm-shrinkwrap.json(5), qui est essentiellement le même fichier, mais qui permet la publication. Ceci n'est pas recommandé à moins de déployer un outil CLI ou d'utiliser ou si vous utilisez le processus de publication pour produire des paquets de production.Oui, il est destiné à être enregistré. Je veux suggérer qu'il obtienne son propre commit unique. Nous trouvons que cela ajoute beaucoup de bruit à nos diffs.
Oui, vous pouvez livrer ce fichier. Extrait de la [docs officielle de npm] (https://docs.npmjs.com/files/package-lock.json) :