II. část – základní principy

GIT na rozdíl od většiny ostatních verzovacích systému má trochu specifickou práci se soubory. Jde o to, že soubor vždycky uloží pouze jednou a od té doby vytváří tzv. snapshoty. V každém commitu (o tom si povíme něco později) je každý soubor uložen jako snapshot a při každém commitu jsou uloženy snapshoty všech souborů. To je oproti ostatním verzovacím systémům, které soubory ukládají vždy až při změně výhoda. Velikost repositáře se tak moc nezvětšuje s každou úpravou. Navíc GIT vše ukládá binárně. Jdou tam ukládat třeba obrázky a poskytují stejný komfort, jako jakékoliv jiné soubory.

Další velikou výhodou GITu je velmi silná integrita dat. Pro všechny složky či soubory GIT vždy vypočítá kontrolní hash součet. Jde o algoritmus SHA-1. Pro všechny soubory či složky tak existuje 40ti místné, hexadecimální číslo a tak není možné jakýkoliv soubor v GITu poškodit, aniž by o tom GIT nevěděl. Soubory v GITu tak nejsou uloženy podle názvů, ale právě podle tohoto hexadecimálního kódu.

Git také nikdy ze souboru nic nemaže. Vše co v souborech uživatel provede je vždy přidání a to i v případě mazání. Pokud smažete řádek, GIT dostává jen informaci o přidání ničeho. Po vytvoření commitu je tak téměř nemožné soubor poškodit. Další velmi důležitou věcí je fakt, že GIT se vším pracuje nejdříve lokálně a až pak teprve vše odešle do vzdáleného repositáře. To přináší jednu obrovskou výhodu a to, že uživatel si svojí práci po sobě, než hotové dílo pustí do světa může zkontrolovat. Co jednou na internet umístíte, to už tam prostě zůstane a nemáte kontrolu nad tím, kdo a kolikrát si to stáhl. Proto práce nejdříve lokálně a až po veškeré kontrole vypuštění na internet je výhodou. V neposlední řadě tak není lokální verze nijak osekaná a obsahuje vše. Můžete pracovat tak tedy úplně normálně i bez internetu a ve chvíli, kdy se na internet dostanete vše teprve vypublikovat.

Pracovní prostory v GITu

Working directory, neboli pracovní adresář je místo, ve kterém se soubory pracujete. Je to ten adresář, ve kterém říkáte, co všechno se v něm má předat do GIT repositáře. Některé soubory totiž můžete mít ve složce uložené, ale GIT je může ignorovat. Soubory které chcete mít v GIT repositáři tedy postoupí do Staging area. Jde v podstatě o složku GITu a vše, co se v tomto místě nachází bude odesláno do lokálního repositáře. Tím je právě míst local repo. Vše co se jednou nachází v repositáři zde bude vždy k dohledání. Je to taková dá se říci historie změn souborů. Posledním prostorem je remote repo, neboli vzdálený repositář. Jde o odeslání dat na server (můžete mít vlastní, nebo github atd..). Z tohoto místa se pak šíří repositář k dalším uživatelům, případně spolupracovníkům, kteří jej mohou rozšiřovat.

Uvedli jsme tedy jednu z cest. Jak jsem před chvílí umínil, že ze vzdáleného repositáře se dá šířit repositář k dalším uživatelům, jde začít i odsud. Vezmete dostupný online repositář, naklonujete si jej k sobě a pokračujete z určitého bodu. Nebo můžete obnovit složku do stavu na serveru atd. Možnosti jsou takřka neomezené a GIT se uživatelům přizpůsobuje. Není to tedy o tom se naučit jednu konkrétní strategii a tu dokolečka používat.


GIT

I. část - Trocha historie na začátek

V tomto díle se podíváme do historie. Tento díl, pokud se s GITem teprve učíte, můžete přeskočit a později se k němu vrátit. Nebude v něm nic důležitého přímo pro práci s GITem. To ale není důvod o ní nic nevědět.

GIT

III. část - Instalace

Na internetu je možné nalézt opravdu velké množství nejrůznějších programů a to jak těch, který mají grafickou nástavbu tak těch, které jdou přes příkazovou řádku. Na příkazovou řádku se budeme zaměřovat, nicméně o grafických si také povíme.

GIT

IV. část - Vytvoření repositáře

Vytvoření nového GIT repositáře není nic jiného, než spuštění naprosto jednoduchého příkazu v konzoli. Vytvoříme si tedy někde na disku novou složku a v té spustíme příkaz