Software | Microsoft | Programování

Microsoft vytvořil GVFS. Souborový systém pro vývojáře, kteří používají Git

Širší počítačová veřejnost ví, že za Linuxem stojí Linus Torvalds, už se však méně tuší, že je zároveň i původním autorem technologie Git, kterou používají vývojáři ke správě svých projektů. Git se postará o synchronizaci a verzování změn ve zdrojových kódech, na kterých pracuje hromada vývojářů, takže zásahem do kódu nevznikne svinčík a tým se může kdykoliv vrátit k předchozí verzi projektu. Suma sumárum, Git lze laikovi připodobnit třeba k Dropboxu a jemu podobným.

Nad Gitem nakonec staví hromada populárních služeb pro vývojáře v čele s úložištěm projektů GitHub.

Git má ale jeden problém. Solidně pracuje s projekty o běžné velikosti, jakmile se však jedná o rozměrné softwarové dílo, které se skládá z tisíců a tisíců zdrojových souborů, Git se už při mnoha úkonech pořádně zapotí. Platí to zejména u příkazů, které hledají změny v kódu projektu (git checkout) a při stažení celé kopie na počítač (git clone).

573591946
Příkaz git clone a stažení projektu z GitHubu

U drobných projektů na GitHubu je to hned, ale představte si, že budete chtít na této technologii spravovat projekt velikosti Windows.

Operační systém z Redmondu se skládá z 3,5 milionů zdrojových souborů, které dohromady čítají 270 GB. Pokud byste tedy u takového projektu spustili příkaz git clone, trvalo by to za průměrných podmínek více než 12 hodin. Uf. Git checkout by sice byl mnohem rychlejší, zabral by jen 3 hodiny, i tak by to však extrémně zpomalilo práci.

GVFS – Git Virtual File System

Microsoft proto vytvořil GVFS – Git Virtual File System, mezivrstvu mezi koncovým programem a souborovým systémem. GVFS funguje podobně jako svého času OneDrive, který zobrazil v Průzkumníku sice všechny soubory na webdisku, systém je však stáhl až v okamžiku, kdy jste si o ně řekli.

GVFS si tedy stejným způsobem udržuje databázi změn v gitovém projektu, ale soubor stáhne až v okamžiku, kdy si o něj řekne koncová aplikace (třeba nějaké vývojové prostředí s podporou Gitu). Má to tu výhodu, že je aplikace na GVFS zcela nezávislá a nepotřebuje jakékoliv změny. Vše se totiž odehrává na úrovni operačního systému.

V případě hypotetického projektu velikosti Windows se pak délka příkazů zmíněných výše zkrátí na jednotky minut a u malých projektů se bude jednat o sekundy.

Microsoft uvolnil GVFS jako open-source a jeho zdrojové kódy vystavil na GitHubu.

Diskuze (30) Další článek: Intelu se zalíbil nápad notebooku se zahnutým displejem a klávesnicí. Nechal si ho patentovat

Témata článku: , , , , , , , , , , , , , , , , , , ,