Git

Co je Git?

Co je Git?

Co je Git?

Dnes je většina projektů vývoje softwaru společným úsilím. Na těchto projektech mohou pracovat stovky nebo tisíce lidí. Sledování změn je tedy nutností pro plynulejší spolupráci. Git je open-source systém pro správu distribuovaných verzí, který sleduje softwarové prostředky a pomáhá spouštět efektivnější vývojové procesy.

Co je systém pro správu verzí?

Když vývojáři pracují na softwaru, musí sledovat jejich změny. Systém pro správu verzí (VCS) si pamatuje verze softwaru při procházení různými fázemi vývoje. Práce se systémem pro správu verzí má následující výhody:

Git - Řízení distribuované verze

Zpočátku byla většina systémů pro správu verzí centralizována. V centralizovaném modelu by se informace o řízení verzí, jako je autorství, datum, čas a informace o úpravách, udržovaly na centralizovaném serveru nebo v databázi. Problém tohoto modelu spočíval v tom, že vývojové týmy byly omezeny výkonem nebo provozem centrálního serveru. Když centrální server selhal, celý systém se zastavil.

V distribuovaném systému řízení verzí (DVCS) jsou informace o verzi udržovány s každou kopií kódu. Umožňuje sdílení peer-to-peer. Není třeba centralizované úložiště (i když je možné jej nastavit).


Krátká historie Gitu

Git začal trochu kontroverzně jako akt pomsty. V roce 2002 začala linuxová komunita bezplatně používat proprietární distribuovaný systém pro správu verzí BitKeeper. V roce 2005 se ale vztah mezi komunitou Linuxu a BitKeeper rozpadl, když byl zrušen status volného použití. Takže Linus Torvalds, tvůrce Linuxu, začal vyvíjet Git jako produkt s otevřeným zdrojovým kódem. Ten rok byla vydána první verze Gitu. Dnes je Git nejpopulárnějším systémem pro správu verzí.

Výhody a nevýhody Git

Git je jednoduchý a výkonný systém pro správu distribuovaných verzí s následujícími výhodami a nevýhodami:

Profesionálové

Výkon: Většina vývojových týmů přechází na Git kvůli výhodám výkonu. Commit, větvení a slučování je v Gitu rychlejší než centralizované systémy pro správu verzí jako CVS, SVN nebo Perforce. Distribuovaná povaha softwaru také vývojářům usnadňuje sdílení práce peer-to-peer. Tento proces je rychlejší než získání kódu z centrálního serveru.

Bezpečnostní: Integritu kódu lze na Gitu snáze ověřit. Využívá kryptograficky bezpečný hash SHA1. Hodnoty hash jsou pro každou modifikaci jedinečné. Pokud někdo změní modifikaci, hodnoty hash se neshodují. Tato vlastnost Gitu ztěžuje skrytí změn kódu kdokoli.

Flexibilita: Git byl navržen tak, aby se přizpůsobil jakémukoli pracovnímu postupu. Starší systémy řízení verzí jsou přísnější. Ale Git dává vašemu týmu větší volnost. Můžete dokonce vytvořit centralizovaný pracovní tok nebo se integrovat s jinými systémy pro správu verzí, aby vaše starší systémy fungovaly.

Nevýhody

Těžší učení: Koncepty Git nejsou vždy intuitivní. Jiné systémy pro správu verzí používají přístup založený více na uživatelském rozhraní. Komunita Git má tendenci upřednostňovat příkazový řádek. Pro netechnické uživatele je tedy náročnější se učit.

Nostalgie pro centralizované řízení verzí: Firmy někdy s používáním Gitu váhají, protože neexistuje centralizovaná kontrola. Ale pokud potřebujete centralizované úložiště, můžete vždy implementovat pracovní postup.


Závěr

Git vzrostl v popularitě díky hodnotě, kterou přidává jakémukoli vývojovému týmu. I když na projektu pracujete sami, spolehlivá historie vám může ušetřit spoustu času. Git je bezplatný a užitečný nástroj pro jakýkoli projekt vývoje softwaru.

Další studie:

Web Git
Základy Git
GitHub - hostitelský web Git
BitBucket - hostitelský web Git

Reference:

Hry Výukový program Shadow of the Tomb Raider pro Linux
Výukový program Shadow of the Tomb Raider pro Linux
Shadow of the Tomb Raider je dvanáctý přírůstek do série Tomb Raider - série akčních adventur vytvořená Eidosem Montrealem. Tato hra byla docela dobře...
Hry Jak zvýšit FPS v Linuxu?
Jak zvýšit FPS v Linuxu?
FPS znamená Snímků za sekundu. Úkolem FPS je měřit snímkovou frekvenci při přehrávání videa nebo herních výkonech. Jednoduše řečeno, počet nepřerušova...
Hry Nejlepší hry Oculus App Lab
Nejlepší hry Oculus App Lab
Pokud jste vlastníkem náhlavní soupravy Oculus, musíte mít informace o bočním nakládání. Sideloading je proces instalace neukládaného obsahu do náhlav...