2017-06-14 51 views
9

npm 5介紹package-lock.json,其中的文檔是here是否應該發佈package-lock.json?

它聲明該文件旨在包含在版本控制中,因此克隆您的軟件包並安裝它的任何人都將擁有相同的依賴版本。換句話說,您不應該將其添加到您的文件.gitignore文件。

它沒有聲明的是不是該文件打算包含在已發佈的軟件包中。這個問題可以改寫爲; 應該將package-lock.json包含在.npmignore中嗎?

回答

10

它無法發佈。

從故宮文檔:

約封裝lock.json一個重要的細節是,它不能出版,它會被忽略,如果在任何地方找到比頂層包中的其他

See package-lock.json documentation on docs.npmjs.com

但是,你應該commiting您package-lock.json與git as per the documentation

該文件旨在被提交到因此公共消息通過NPM呈現源庫

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

編輯:更詳細的解釋can be found here

+2

我還是很困惑。這個文件似乎說矛盾的事情。一方面它說它'不能發佈'。如果下一句話會說它在發佈時被忽略,那麼這將是有意義的。但是......相反,它表示如果在頂層包**以外的任何地方發現它將被忽略**。所以這似乎是說,如果它發現在頂層包中......它將**被髮布。似乎有點矛盾。嗯是的。我很困惑。 – Kris