Gadewch i npm ddewis y gofrestr yn ôl cwmpas y pecyn, nid y VPN
Mae cofnod cwmpas yn anfon pecynnau'r cwmni i gofrestr breifat ac yn gadael popeth arall yn gyhoeddus. Mae llwybro, cyfrineiriau a blaenoriaeth yn dair penderfyniad arall.
Ni ddylai cysylltu'r VPN olygu golygu gosodiad cofrestr npm ddwywaith y dydd. Gall cofnod cwmpas mewn ffeil ffurfweddu ar lefel prosiect anfon pecynnau'r cwmni i un gofrestr a phopeth arall i'r un gyhoeddus, heb unrhyw newid ac heb unrhyw ddiystyru yn cael ei adael ar ôl brynhawn Gwener. Yr anhawster yw mai dim ond yr enwi y mae hyn yn ei ddatrys; mae llwybro, cyfrineiriau a blaenoriaeth ffurfweddu yn dair peth ar wahân sy'n methu pob un yn ei ffordd ei hun.
Dau enw, dau gyrchfan
Mae gan enw pecyn npm gwmpas neu does ganddo ddim. Mae enw â chwmpas yn dechrau gyda marc @ a dynodydd cwmpas, a'r dynodydd hwnnw yw'r hyn y gall y ffurfweddiad ei fapio. Nid oes unrhyw beth arall am y pecyn yn bwysig i'r mapio. Nid yw'r gofrestr byth yn gweld cais ar sail p'un a yw'r pecyn yn fewnol neu'n gyhoeddus; dim ond enw y mae'n ei weld.
Felly mae'r ffeil isod yn mynegi dau fwriad mewn tair llinell: mae pecynnau cyhoeddus yn mynd i'r gofrestr gyhoeddus, ac mae pecynnau o dan gwmpas y cwmni yn mynd i gofrestr y cwmni gyda thocyn ar gyfer y gwesteiwr hwnnw.
registry=https://registry.npmjs.org/
@acme:registry=https://packages.corp.example/
//packages.corp.example/:_authToken=${NPM_TOKEN}Disodlwch y cwmpas, y gwesteiwr ac enw'r newidyn â'r hyn y mae'r sefydliad yn ei ddarparu mewn gwirionedd. Y strwythur sy'n bwysig, nid y gwerthoedd enghreifftiol. Mae dwy linell o ffurfweddiad yn cario'r polisi cyfan, a dyna pam mae'n werth eu deall yn lle eu copïo.
Cadwch y mapio a'r rhwydwaith mewn adrannau ar wahân yn eich meddwl. Ni all cofnod cwmpas wneud gwesteiwr anhygyrch yn hygyrch, ac ni all twnnel sy'n gweithio ddweud wrth npm pa gofrestr y mae pecyn yn perthyn iddi.
Ysgrifennwch y ffeil yn y drefn gywir
Rhowch ffeil y prosiect yn gyntaf yn eich rhesymu er bod npm yn darllen sawl ffeil. .npmrc yng nghyfeiriadur y prosiect yw'r un y mae eich cydweithwyr yn ei etifeddu trwy'r storfa, felly dylai fynegi'r polisi a rennir yn hytrach na'ch tocyn personol. Y ffeil honno hefyd yw'r un y bydd adolygydd yn ei darllen. Cadwch hi'n ddigon bach i'w hadolygu mewn un cipolwg.
Gadewch y llinell registry ddiofyn yn pwyntio at y gofrestr gyhoeddus oni bai bod y sefydliad wedi penderfynu fel arall. Mae ei thynnu'n gwneud y peiriant yn dibynnu ar yr hyn y mae'r ffeil lefel defnyddiwr yn ei ddweud, a dyna'n union y math o ddibyniaeth ymhlyg sy'n cynhyrchu canlyniadau gwahanol ar ddau liniadur.
Nid yw'r llinell gwmpas yn gard gwyllt. Mae enw y tu allan i'r cwmpas yn parhau i ddefnyddio'r rhagosodiad, a dyna'r ymddygiad rydych chi ei eisiau ar gyfer pob dibyniaeth na wnaethoch chi ei hysgrifennu eich hun.
Gwiriwch beth y mae'r ffeil yn datrys iddo cyn ei chyflawni, gan ddefnyddio enw pecyn tafladwy yn hytrach na gosodiad go iawn, fel nad yw camgymeriad yn costio dim.
Mae cyfrineiriau'n perthyn i westeiwr, nid i brosiect
Mae cofnodion dilysu wedi'u hallweddu i westeiwr cofrestr a, lle mae'r gofrestr yn ei angen, i lwybr. Dyna pam mae'r llinell docyn yn dechrau gyda'r slaes dwbl a'r gwesteiwr yn hytrach na'r cwmpas. Unwaith y gwelwch y gwesteiwr yn y safle hwnnw, mae gweddill y llinell yn peidio â bod yn edrych fel atalnodau mympwyol. Cyfeiriad ydyw, ac mae'r tocyn ynghlwm wrtho.
Mae defnyddio newidyn amgylchedd yn cadw'r tocyn llythrennol allan o'r ffeil yn y storfa. Nid yw'n gwneud y tocyn yn anweledig ym mhobman; mae'n dal i ymddangos yn amgylchedd y broses, a gall gorchymyn sy'n argraffu ffurfweddiad ei ddatgelu.
Darparwch y newidyn trwy ba bynnag fecanwaith cyfrinair lleol neu CI y mae'r sefydliad yn ei gymeradwyo, a pheidiwch byth â gludo tocyn go iawn mewn enghraifft a allai gael ei chopïo i ddogfennaeth.
Os oes dwy gofrestr dan sylw, mae pob un yn cael ei chofnod ei hun. Mae un gosodiad tocyn heb gymhwyster yn amwys ar ei orau ac yn cael ei anfon i'r gwesteiwr anghywir ar ei waethaf.
Pan fydd y gofrestr anghywir yn ennill
Mae ffurfweddiad yn haenog, ac nid yw'r gwerth sydd mewn grym o reidrwydd yn werth yn y ffeil rydych newydd ei golygu. Mae gosodiadau prosiect, gosodiadau defnyddiwr, gosodiadau byd-eang a newidynnau amgylchedd i gyd yn cymryd rhan. Yr haeniad hwnnw yw'r rheswm pam mae cywiriad yn gweithio ar eich peiriant chi ac nid yng nghynhwysydd cydweithiwr. Dyma hefyd y rheswm pam mae'n werth argraffu'r gwerth effeithiol cyn dadlau yn ei gylch.
Newidyn amgylchedd yw'r troseddwr arferol yn CI, lle mae swydd yn gosod y gofrestr unwaith ac mae pob cam dilynol yn ei etifeddu. Yr ail fwyaf cyffredin yw ffeil lefel defnyddiwr ar beiriant datblygwr sy'n diystyru'r hyn y mae'r storfa'n ei ddweud.
Argraffwch y ffurfweddiad effeithiol a'r gofrestr a ddatryswyd ar gyfer un enw â chwmpas ac un heb gwmpas cyn dadfygio unrhyw beth arall. Os yw'r ddau ateb hynny'n beth rydych chi'n ei ddisgwyl, y rhwydwaith yw'r broblem; os nad ydynt, ffurfweddiad yw'r broblem ac ni fydd unrhyw faint o waith VPN yn helpu.
Rhestr wirio cyn cyflawni
Cadarnhewch fod enw'r cwmpas yn cyfateb i'r pecynnau a gyhoeddwyd mewn gwirionedd, bod y gofrestr ddiofyn yn bendant, a bod y llinell docyn yn enwi'r gwesteiwr cywir. Mae gwall teipio yn y cwmpas yn cynhyrchu'r methiant rhyfeddaf oll, oherwydd mae'r pecyn yn datrys o'r gofrestr gyhoeddus ac yn dychwelyd modiwl rhywun arall o'r un enw. Gwiriwch yr enw cyn dadfygio'r tocyn.
Cadarnhewch fod y gofrestr breifat yn hygyrch o'r peiriant yn y cyd-destun sy'n rhedeg y gosodiad, nid yn unig o'ch porwr. Mae'r gwahaniaeth hwnnw'n bwysig pan fydd procsi neu gynhwysydd â llwybro gwahanol i'ch cragen.
Yna cadarnhewch yr ymddygiad ar ddatguddiad glân heb becynnau wedi'u cache. Gosodiad ffres yw'r unig brawf sy'n dangos beth fydd cydweithiwr newydd yn ei brofi.