2017-06-14 13 views
9

npm 5 giới thiệu package-lock.json, trong đó tài liệu là here.Nên package-lock.json cũng được xuất bản?

Nó nói rằng tệp được dự định để được bao gồm với kiểm soát phiên bản, vì vậy bất kỳ ai nhân bản gói của bạn và cài đặt nó sẽ có cùng phiên bản phụ thuộc. Nói cách khác, bạn không nên thêm nó vào tệp .gitignore của mình.

Điều gì không nêu rõ thời tiết hay không tệp được dự định đưa vào gói được xuất bản. Câu hỏi này có thể được lặp lại như; nên bao gồm package-lock.json trong .npmignore?

Trả lời

10

Không thể xuất bản.

Từ các tài liệu NPM:

Một chi tiết quan trọng về gói-lock.json là nó không thể được công bố, và nó sẽ bị bỏ qua nếu tìm thấy ở bất kỳ nơi nào khác hơn so với gói mục cấp đầu

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

Tuy nhiên, bạn nên cam kết package-lock.json thành git as per the documentation.

Tập tin này được dự định sẽ được cam kết vào kho nguồn

do đó thông điệp chung được trình bày bởi NPM:

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

EDIT: Một lời giải thích chi tiết hơn can be found here.

+2

Tôi vẫn còn bối rối. Tài liệu này dường như nói những điều mâu thuẫn. Một mặt nó nói nó 'không thể được xuất bản'. Điều đó sẽ có ý nghĩa nếu câu tiếp theo sẽ nói rằng nó bị bỏ qua khi xuất bản alltogether. Nhưng ... thay vào đó, nó nói rằng nó sẽ bị bỏ qua ** nếu tìm thấy ở bất kỳ nơi nào khác ngoài gói toplevel **. Vì vậy, có vẻ như rằng nếu nó được tìm thấy trong gói toplevel ... nó ** sẽ ** được xuất bản. Có vẻ hơi mâu thuẫn. Vậy ... yeah. Tôi bối rối. – Kris

Các vấn đề liên quan