Praha & EU: Investujeme do vaší budoucnosti Evropský sociální fond Gymnázium, Praha 10, Voděradská 2 Projekt OBZORY
Verzování Manuálně (zip, arc, tar) Version Control Systém (VCS) –Centralizované systémy CVS (1986) Subversion == SVN (2000) –Decentralizované systémy Mercurial (2005) Git (2005)
Účel VCS Zálohování a obnovení ze zálohy Sdílení, synchronizace Možnost vrátit se do starší varianty Paralelní vývoj Zkoumání historie obsahu Deployment
Základní pojmy Repozitory Revize Working copy
Základní pojmy II Commit Branch Tag Merge Trunk/Master HEAD
Původ Gitu Linus Torvalds Verzování vývoje Linuxového jádra Odlišná filosofie od CVS/SVN
Historie začátek vývoje oznámení projektu Git verzování Gitu pomocí Gitu branch, merge vydána první revize Linuxu vyvíjená na Gitu
Základní vlastnosti Jednoduchost Rychlost Flexibilita Snapshot-based Distribuovanost Podpora pro nelineární vývoj Úpravy historie
CLI i GUI
Zřízení repozitáře Založení lokálního mkdir cv5 cd cv5 git init Naklonování vzdáleného git clone git://github.com/GymvodNette/cv1.git
Tvorba commitů Nové soubory/změny Přidáme do staging/index Commit – vytvoření revize ze souborů, které jsou ve staging Celý proces se odehrává lokálně
Distribuovanost Lokální operace Peer to peer Každá kopie repozitáře je úplná – celá historie, všechny větve
Vzdálený repozitář git push – odešle lokální stav git fetch – stáhne informace o vzdáleném stavu git pull = git fetch + git merge stáhne změny ze serveru a okamžitě je začlení do aktuální větve
Branch Alternativní stav repozitáře Pouze ukazatel na stav –> může se libovolně přesouvat Můžu vytvořit kdykoli, i po tom co začnu dělat změny (dokonce i po commitu) Smazáním větve žádné commity nemizí (mažu jen ukazatel)
Branch II založení větve git branch my-branch přepnutí se do jiné větve git checkout my-branch (můžu použít i tag nebo revizi) založení větve + přepnutí git checkout –b my-branch-2
Branch III
Merge Spojení dvou větví git merge iss53
Merge hell
Použité zdroje a literatura Oficiální stránka Gitu Návod pro začátečníky < Podrobný popis historie vzniku Zdarma dostupná online verze knihy Pro Git Obecné informace o verzovacích systémech
Praha & EU: Investujeme do vaší budoucnosti Evropský sociální fond Gymnázium, Praha 10, Voděradská 2 Projekt OBZORY Tato prezentace byla vytvořena v rámci projektu OBZORY Autor: Václav Purchart Předmět: Tvorba webových aplikací Datum: