package.json , package-lock.json
長らくわかっていなかったこれらの違い、そのままにしてしまっていたが、今回機会あって教えていただいたので、メモ。
・package.json
まず、package.json。
これは、'npm install'を実行した時に使われるファイルで、これを基にpackage-lock.jsonが作られる。各npmのバージョンが何以上である必要があるかが書いてある。
使っているnpmがすべて書いており、ひと目で見るにはpackage-lock.jsonよりこちらの方が見やすい。
その他スクリプトを保存しておく場所としても使われている。
※このあたりはまだ曖昧
・package-lock.json
こちらは、package.jsonを基に作られ、各npmの確定したバージョンを記録しておく場所。
package.jsonでは、各npmのバージョンが何以上かしか書いていないが、package-lock.jsonには'npm install'した時にインストールしたバージョンが記載される。
コンパイルする際には、package-lock.jsonが使用される。
基本的にはどちらもgithubなどに上げる。
package-lock.jsonを更新していないと記載されているnpmのバージョンが古くなっていることもある。
この記事が気に入ったらサポートをしてみませんか?