I-Unity Package Manager

Ubumbano luyinkundla osekunesikhathi eside ikhona futhi ilokhu ivela njalo. Kodwa-ke, lapho usebenza namaphrojekthi amaningana ngesikhathi esisodwa, usengabhekana nobunzima ekusebenziseni imithombo evamile (.cs), imitapo yolwazi (.dll) nezinye izimpahla (izithombe, imisindo, amamodeli, ama-prefabs). Kulesi sihloko, sizokhuluma ngokuhlangenwe nakho kwethu ngesisombululo sendabuko senkinga enjalo ye-Unity.

I-Unity Package Manager

Izindlela Zokusabalalisa Izisetshenziswa Ezabiwe

Kukhona indlela engaphezu kweyodwa yokusebenzisa izinsiza ezabiwe kumaphrojekthi ahlukene, kodwa indlela ngayinye inobuhle bayo nobubi bayo.

1. Ukuphindaphinda - β€œngesandla” siphinda izinsiza phakathi kwamaphrojekthi.

Izinzuzo:

  • Ifanele zonke izinhlobo zezinsiza.
  • Azikho izinkinga zokuncika.
  • Ayikho inkinga ngama-GUID wempahla.

Umthengi:

  • Amaqoqo amakhulu.
  • Ayikho inketho yokwenza inguqulo.
  • Ubunzima bokulandelela izinguquko ezinsizeni ezabiwe.
  • Ubunzima bokubuyekeza izinsiza ezabiwe.

2. I-Git submodules - ukusatshalaliswa kwezinsiza okwabelwana ngazo ngamamojula angaphandle.

Izinzuzo:

  • Ungasebenza ngemithombo.
  • Ungakwazi ukusabalalisa amafa.
  • Azikho izinkinga zokuncika.

Umthengi:

  • Amakhono e-Git ayadingeka.
  • I-Git ayinabo ubungane kakhulu namafayela kanambambili - kufanele ufake i-LFS.
  • Ukulawula ukufinyelela kwamakhosombe.
  • Ubunzima bokuthuthukisa nokwehlisa izinga.
  • Ukushayisana kwe-GUID kuyenzeka futhi akukho ukuziphatha okungacacile ngasohlangothini lwe-Unity ukuze kukuxazulule.

3. I-NuGet - ukusatshalaliswa kwemitapo yolwazi ehlanganyelwe ngamaphakheji e-NuGet.

Izinzuzo:

  • Ukusebenza okulula namaphrojekthi angancikile ku-Unity.
  • Inguqulo elula nokulungiswa kokuncika.

Umthengi:

  • Ubumbano alazi ukuthi lusebenza kanjani namaphakheji we-NuGet ngaphandle kwebhokisi (ungathola i-NuGet Package Manager for Unity ku-GitHub, elungisa lokhu, kodwa kukhona ama-nuances).
  • Ubunzima bokusabalalisa ezinye izinhlobo zezimpahla.

4. Umphathi Wephakheji Lobumbano - ukusatshalaliswa kwezinsiza ezabiwe ngesixazululo somdabu soBumbano.

Izinzuzo:

  • Isixhumi esibonakalayo somdabu sokusebenza namaphakheji.
  • Ukuvikelwa ekubhaleni ngaphezulu amafayela e-.meta kumaphakheji esimweni sokungqubuzana kwe-GUID.
  • Ikhono lokuhumusha.
  • Ikhono lokusabalalisa zonke izinhlobo zezinsiza ze-Unity.

Umthengi:

  • Ukungqubuzana kwe-GUID kusengenzeka.
  • Awekho amadokhumenti okusebenza.

Indlela yokugcina inezinzuzo eziningi kunemibi. Kodwa-ke, ayidumile kakhulu manje ngenxa yokuntuleka kwemibhalo, ngakho-ke sizohlala kuyo ngokuningiliziwe.

I-Unity Package Manager

I-Unity Package Manager (kamuva ebizwa ngokuthi i-UPM) iyithuluzi lokuphatha iphakheji. Yengezwe ku-Unity 2018.1 futhi yasetshenziselwa kuphela amaphakheji athuthukiswe yi-Unity Technologies. Kodwa-ke, kusukela ngenguqulo 2018.3, kube nokwenzeka ukwengeza amaphakheji angokwezifiso.

I-Unity Package Manager
I-Unity Package Manager Interface

Amaphakheji awagcini emithonjeni yephrojekthi (uhla lwemibhalo Lwempahla). Asohlwini lwemibhalo oluhlukile. %projectFolder%/Library/PackageCache futhi ungathinti iphrojekthi nganoma iyiphi indlela, ukusho kwabo kuphela kukhodi yomthombo kufayela packages/manifest.json.

I-Unity Package Manager
Amaphakheji ohlelweni lwefayela lephrojekthi

Imithombo yephakheji

I-UPM ingasebenzisa imithombo yamaphakheji eminingana:

1. Isistimu yefayela.

Izinzuzo:

  • Isivinini sokuqalisa.
  • Akudingi amathuluzi ezinkampani zangaphandle.

Umthengi:

  • ubunkimbinkimbi bokuhumusha.
  • Ukufinyelela okwabiwe ohlelweni lwefayela kuyadingeka kuwo wonke umuntu osebenza nephrojekthi.

2. Inqolobane ye-Git.

Izinzuzo:

  • Okudingayo nje inqolobane ye-Git.

Umthengi:

  • Awukwazi ukushintsha phakathi kwezinguqulo ngewindi le-UPM.
  • Ayisebenzi nawo wonke amakhosombe e-Git.

3. inqolobane ye-npm.

Izinzuzo:

  • Isekela ngokugcwele ukusebenza kwe-UPM futhi isetshenziselwa ukusabalalisa amaphakheji e-Unity asemthethweni.

Umthengi:

  • Okwamanje iziba zonke izinhlobo zeyunithi yezinhlamvu zamaphakheji ngaphandle kokuthi "-preview".

Sizobheka ukusetshenziswa kwe-UPM + npm ngezansi. Le nqwaba ilungile ngoba ikuvumela ukuthi usebenze nganoma yiluphi uhlobo lwezinsiza futhi uphathe izinguqulo zephakheji, futhi futhi isekela ngokugcwele isixhumi esibonakalayo se-UPM somdabu.

Njengenqolobane ye-npm, ungasebenzisa I-Verdaccio. Inemininingwane eminingi imibhalo, futhi kuthatha imiyalo embalwa ukuyiqhuba.

Ukusethwa kwemvelo

Okokuqala udinga ukufaka i-node.js.

Dala iphakheji

Ukuze udale iphakheji, udinga ukubeka ifayela package.json, ezoyichaza, kuhla lwemibhalo nokuqukethwe kwale phakheji. Udinga ukwenza lokhu okulandelayo:

Iya kumkhombandlela wephrojekthi esifuna ukwenza iphakheji.

Qalisa umyalo we-npm init bese ufaka amanani adingekayo phakathi nengxoxo. Ngegama, cacisa igama ngefomethi yesizinda esiphambene, isibonelo, com.plarium.somepackage.
Ukuze uthole ukuboniswa okulula kwegama lephakheji, engeza isici se-DisplayName ku-package.json bese usigcwalisa.

Njengoba i-npm iqondiswe ku-js, ifayela liqukethe izinto eziyinhloko nezikripthi esingazidingi, ubunye obungazisebenzisi. Kungcono ukuwasusa ukuze ungavali incazelo yephakheji. Ifayela kufanele libukeke kanje:

  1. Iya kumkhombandlela wephrojekthi esifuna ukwenza iphakheji.
  2. Qalisa umyalo we-npm init bese ufaka amanani adingekayo phakathi nengxoxo. Ngegama, cacisa igama ngefomethi yesizinda esiphambene, isibonelo, com.plarium.somepackage.
  3. Ukuze uthole ukuboniswa okulula kwegama lephakheji, engeza isici se-DisplayName ku-package.json bese usigcwalisa.
  4. Njengoba i-npm iqondiswe ku-js, ifayela liqukethe izinto eziyinhloko nezikripthi esingazidingi, ubunye obungazisebenzisi. Kungcono ukuwasusa ukuze ungavali incazelo yephakheji. Ifayela kufanele libukeke kanje:
    {
     "name": "com.plarium.somepackage",
     "displayName": "Some Package",
     "version": "1.0.0",
     "description": "Some Package Description",
     "keywords": [
       "Unity",
       "UPM"
     ],
     "author": "AUTHOR",
     "license": "UNLICENSED"
    }

  5. Vula i-Unity futhi ukhiqize ifayela le-.meta le-package.json (I-Unity ayiwaboni amafa ngaphandle kwamafayela e-.meta, amaphakheji e-Unity avula ukufunda kuphela).

Ithumela iphakheji

Ukuze uthumele iphakheji, udinga ukusebenzisa umyalo: npm publish --registry *адрСс Π΄ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²*.

Ukufaka nokubuyekeza amaphakheji nge-Unity Package Manager

Ukwengeza iphakheji kuphrojekthi ye-Unity, udinga:

  1. Bhala kufayela manifest.json ulwazi mayelana nomthombo wamaphakheji. Ukuze wenze lokhu, udinga ukwengeza isakhiwo scopedRegistries futhi ukhombise izikophu kanye nekheli lomthombo lapho izikophu ezithile zizoseshwa khona.
    
    "scopedRegistries": [
       {
         "name": "Main",
         "url": "адрСс Π΄ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²",
         "scopes": [
           "com.plarium"
         ]
       }
     ]
    
  2. Iya ku-Unity bese uvula iwindi Lomphathi Wephakheji (ukusebenza ngamaphakheji wangokwezifiso akufani nokusebenza ngawakhelwe ngaphakathi).
  3. Khetha Wonke Amaphakheji.
  4. Thola iphakheji edingekayo bese uyifaka.

I-Unity Package Manager

Ukusebenza ngemithombo nokulungisa iphutha

Ukuze imithombo ixhunywe kuphrojekthi, udinga ukudala Incazelo Yomhlangano okwephakheji.

Ukusetshenziswa kwamaphakheji akukhawuli ububanzi bokulungisa iphutha. Kodwa-ke, lapho usebenza namaphakheji ku-Unity, awukwazi ukuya ku-IDE ngokuchofoza iphutha kukhonsoli uma iphutha lenzeke kuphakheji. Lokhu kungenxa yokuthi i-Unity ayiboni imibhalo njengamafayela ahlukene, ngoba uma usebenzisa Incazelo Yomhlangano, iqoqwa emtatsheni wezincwadi futhi ifakwe kuphrojekthi. Uma usebenza ngemithombo evela kuphrojekthi, ukushintshela ngokuchofoza ku-IDE kuyatholakala.

Iskripthi kuphrojekthi enephakheji exhunyiwe:

I-Unity Package Manager
Iskripthi esivela kuphakheji enephuzu lokusebenza:

I-Unity Package Manager

Ukulungiswa okuphuthumayo kumaphakheji

Amaphakheji obumbano angezwe kuphrojekthi afundwa kuphela, kodwa angahlelwa kunqolobane yephakheji. Ukuze wenze lokhu udinga:

  1. Iya kuphakheji kunqolobane yephakheji.

    I-Unity Package Manager

  2. Yenza izinguquko ezidingekayo.
  3. Buyekeza inguqulo kufayela package.json.
  4. thumela iphakheji npm publish --registry *адрСс Π΄ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²*.
  5. Buyekeza inguqulo yephakheji ibe inguqulo elungisiwe ngokusebenzisa isixhumi esibonakalayo se-UPM.

Izingxabano zokungenisa kwephakheji

Lapho ungenisa amaphakheji, kungase kuvele izingxabano ezilandelayo ze-GUID:

  1. Iphakheji yiphakheji. Uma, lapho ungenisa iphakheji, kutholakala ukuthi amaphakheji angeziwe angeziwe aqukethe amafa ane-GUID efanayo, amafa anama-GUID afanayo asuka kuphakheji engenisiwe ngeke angezwe kuphrojekthi.
  2. Iphakheji iphrojekthi. Uma, lapho ungenisa iphakheji, kutholakala ukuthi iphrojekthi inezimpahla ezinama-GUID afanayo, khona-ke izimpahla ezivela kuphakheji ngeke zengezwe kuphrojekthi. Nokho, izimpahla ezincike kuzo zizoqala ukusebenzisa izimpahla ezivela kuphrojekthi.

Ukudlulisa impahla isuka kuphrojekthi iye kuphakheji

Uma udlulisela impahla isuka kuphrojekthi iye kuphakheji ene-Unity evuliwe, khona-ke ukusebenza kwayo kuzogcinwa, futhi izixhumanisi ezimpahleni ezincikile zizoqala ukusebenzisa impahla evela kuphakheji.

ezibalulekile: Lapho ukopisha impahla isuka kuphrojekthi iye kuphakheji, ukungqubuzana kwephakheji nephrojekthi okuchazwe esigabeni esingenhla kuzokwenzeka.

Izixazululo ezingaba khona zokungqubuzana

  1. Ukwabela kabusha ama-GUID ngokuya ngama-algorithms akho lapho ungenisa wonke amafa ukugwema ukungqubuzana.
  2. Ukwengeza wonke amafa kuphrojekthi eyodwa ngokuhlukaniswa kwawo okulandelayo kumaphakheji.
  3. Dala isizindalwazi esiqukethe ama-GUID azo zonke izimpahla futhi uqinisekise lapho uthumela amaphakheji.

isiphetho

I-UPM iyisixazululo esisha sokusabalalisa izinsiza ezabiwe ku-Unity ezingaba enye indlela efanele ezindleleni ezikhona. Izincomo ezichazwe esihlokweni zavela ngesisekelo samacala angempela. Sithemba ukuthi uzowathola ewusizo.

Source: www.habr.com

Engeza amazwana