See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 9038|Vastuse: 0

Mis package-lock.json genereerib NPM-i paigaldus?

[Kopeeri link]
Postitatud 13.12.2017 13:17:45 | | |
NPM-i muutmisel node_modules puu või mõne muu tegevuse package.json puhul genereeritakse automaatselt package-lock.json. See kirjeldab täpset puud, mis genereeritakse, et järgnevad installatsioonid saaksid sama puu genereerida, sõltumata vahepealsetest sõltuvusuuendustest.

See fail on mõeldud lähtekoodi hoidla esitamiseks ja on saadaval mitmel otstarbel:

Kirjeldab ühte sõltuvuspuu esitlust, et tagada, et meeskonnakaaslased, juurutused ja pidev integreerimine tagavad, et täpselt samad sõltuvused on paigaldatud.

Anna kasutajatele tööriist, et "edasi liikuda" eelmisse node_modules olekusse ilma, et peaks ise kataloogi ise kinnitama.

Soodustada puu muutuste paremat nähtavust loetavate allikakontrolli erinevuste kaudu.

Ja optimeerida paigaldusprotsessi, võimaldades NPM-il vahele jätta varem paigaldatud pakettide duplikaatset metaandmete lahendust.

Oluline detail package-lock.json on see, et seda ei saa välja anda ja seda ignoreeritakse, kui seda leitakse väljaspool tipptasemel paketti. See jagab formaati npm-shrinkwrap.json-ga, see on sisuliselt sama fail, kuid võimaldab avaldamist. See ei ole soovitatav, välja arvatud juhul, kui juurutate CLI-tööriista või muul viisil kasutate väljalaskeprotsessi tootmispaketi loomiseks.

Kui nii package-lock.json kui ka npm-shrinkwrap.json eksisteerivad paketi juurkataloogis, siis package-lock.json ignoreeritakse täielikult.

Originaallink: https://docs.npmjs.com/files/package-lock.json


Alates npm 5.x väljalaskest on 5.6.0 lukustuse roll korduvalt muutunud ning nüüd on paljud väikesed valged tekstid internetis kinni jäänud varasemasse dokumenditõlkesse.

Uuendasin npm3.x-lt npm5-le, kuid avastasin, et nähtus 'npm i' käivitamisel ei olnud kooskõlas internetis levinud populaarteadusliku artikliga.

Mainitakse, et ükskõik kui palju package.json faili muudetakse, kui npm i korduvalt käivitatakse, laaditakse npm alla vastavalt lukustusfailis kirjeldatud versiooniteabele.

Samuti mainitakse, et kui npm i kordab, ignoreerib npm lukustusinfot ja laadib uuendusmooduli alla vastavalt paketi semantilise versiooni infole package.json (lukk tundub kasutu).

**Info kohaselt on NPM I reegleid alates NPM 5.0 ilmumisest kolm korda muutunud. **

1. NPM 5.0.x versioon, ükskõik kuidas package.json muutub, NPM I laaditakse alla vastavalt lukufailile

package-lock.json faili ei uuendata pärast package.json faili muutmist · Väljaanne #16866 · NPM/NPM https://github.com/npm/npm/issues/16866
See probleem kaebab selle üle, loomulikult vahetasin package.json käsitsi, miks sa ei anna mulle uuenduspaketti! Ja siis viib see 5.1.0 probleemini...

2. Pärast versiooni 5.1.0 ignoreerib npm paigaldus lukufaili, et laadida alla uusim npm

Siis tõstatas keegi selle küsimuse, miks paketilukustust ignoreeritakse? · Väljaanne #17979 · NPM/NPM https://github.com/npm/npm/issues/17979
Kaebus arenes lõpuks reegliteks pärast versiooni 5.4.2.

3. Pärast versiooni 5.4.2, miks paketilukustust ignoreeritakse? · Väljaanne #17979 · NPM/NPM https://github.com/npm/npm/issues/17979


Umbkaudselt, kui package.json muudetakse ja package.json erineb lukufailist, laadib npm alla uusima paketi vastavalt versiooninumbrile ja paketi semantilisele tähendusele 'npm i' käivitamisel ning uuendab selle lukustuseks.

Kui mõlemad on samas olekus, siis käivitades NPM-i laadin alla vastavalt lukustusele, sõltumata sellest, kas tegelik paketiversioon on uus või mitte.






Eelmine:Esita statistika ja täienda ajameetodit ilma andmeteta
Järgmine:NPM-i õpetus (4): Paigalda NPM-paketid kohapeal
Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com