====== GIT - Quickstart ======
==== Instalace ====
Nainstalujte si git dle návodu [[https://git-scm.com/install/| z oficialního webu]], dle Vašeho operačního systému.
Funkčnost instalace můžete ověřit commandem v terminalu příkazem:
git --version
==== Generovaní SSH klíče ====
Pro komunikaci s GIT serverem budete potřebovat SSH klíč. Klíč vygenerujete příkazem v terminalu:
ssh-keygen -t rsa -b 4096 -C "username@fel.cvut.cz"
Jelikož autentizace pomocí SSH klíčů probíhá na obou stranách, výstupem jsou dva soubory. Prvním souborem je soukromý klíč **id_rsa**, který zůstává u uživatele na počítači a nikdy se nikam a nikomu nekopíruje. Jeho účelem je ověření totožnosti uživatele. Druhý soubor je **id_rsa.pub**, který je označován jako veřejný klíč a nahrává se na server, se kterým chceme komunikovat. Veřejný klíč slouží serveru k identifikaci konkrétního uživatel, který drží klíč soukromý. Dobrou praxí je, že každé zařízení má svůj vlastní soukromý klíč a který existuje vždy právě jeden. Soukromým klíčem se jednoznačně identifikujete u všech autorit, kterým jste dali veřejný klíč. Ty naopak je možné nahrát všude, kam chcete s daným zařízením přistupovat.
==== Spárování klíče s GitLabem ====
Abyste mohli pracovat s repozitářemi na serveru, musíte nejprve spárovat Váš klíč s Gitlabem:
* Pomocí ČVUT SSO se přihlašte na fakultní [[https://gitlab.fel.cvut.cz/ | GitLab]].
* Vpravo nahoře klikněte na ''Váš avatar > **Edit Profile**''.
* Vlevo vyberte ''**SSH Keys**''.
* Zvolte ''**Add new key**''.
* Do pole ''**Key**'' zkopírujte obsah Vašeho veřejného klíče z **id_rsa.pub** (lze otevřít v libovolném textovém editoru).
* Do pole ''**Title**'' zadejte identifikační popisek ke klíčí (např. název vašeho zařízení).
* Klič uložíte tlačítkem ''**Add key**''.
==== Lokální konfigurace ====
Před prvním použití gitu je třeba nastavit globální konfiguraci gitu na zařízení. To provedete následujícími příkazy:
git config --global user.name "Jmeno Prijmeni"
git config --global user.email "username@fel.cvut.cz"
==== Příkazy a práce s gitem ====
Přehled příkazů z oficialního [[ https://git-scm.com/cheat-sheet|cheat sheetu]].