Microsoft napoveduje navidezni datotečni sistem Git za podporo zelo velikih repojev

Ikona časa branja 2 min. prebrati


Bralci pomagajo pri podpori MSpoweruser. Če kupujete prek naših povezav, lahko prejmemo provizijo. Ikona opisa orodja

Preberite našo stran za razkritje, če želite izvedeti, kako lahko pomagate MSPoweruser vzdrževati uredniško skupino Preberi več

Git je porazdeljen sistem za nadzor revizij, ki se uporablja pri razvoju programske opreme, ki vključuje veliko ljudi. Številne ekipe pri Microsoftu že uporabljajo Git. Ekipe, ki imajo velike kodne baze, se soočajo s težavami z zmogljivostjo s trenutno različico Gita, saj ni zasnovana za delo z res ogromnimi kodnimi bazami. na primer kodna baza Windows ima več kot 3.5 milijona datotek in je velika več kot 270 GB. Ko zaženete »git checkout«, traja do 3 ure, »git clone« traja več kot 12 ur ali celo preprost »git status« traja skoraj 10 minut, da se zažene. Da bi se izognil tem težavam z zmogljivostjo, Microsoft dela na rešitvi, ki omogoča odjemalcu Git, da se poveča na res ogromne repo. Nova rešitev se imenuje GVFS (Git Virtual File System).

Tukaj je, kako deluje,

  • GVFS virtualizira datotečni sistem pod vašim repo-jem in naredi videti, kot da so vse datoteke v vašem repo-ju prisotne, v resnici pa datoteko prenese le ob prvem odprtju.
  • GVFS tudi aktivno upravlja, koliko repo-ja mora Git upoštevati pri operacijah, kot sta odjava in status, saj je mogoče katero koli datoteko, ki ni bila hidrirana, varno prezreti.

Ker se GVFS upravlja na ravni datotečnega sistema, jih bodo vaši IDE in orodja za gradnjo podpirali takšne, kot so. Medtem ko GVFS že ponuja znatne izboljšave v zmogljivosti, si Microsoft prizadeva, da bi ga še izboljšal. Microsoft ponuja tudi odprto kodo odjemalca. Izvorna koda GVFS je na voljo pod licenco MIT.

Izvorno kodo lahko najdete na Githubu tukaj. Preberite več o tem GVFS tukaj.

Več o temah: git, Virtualni datotečni sistem Git, GVFS, microsoft, Upravljanje izvorne kode, nadzor različice

Pustite Odgovori

Vaš e-naslov ne bo objavljen. Obvezna polja so označena *