Jak na Git a Github?
Git a GitHub jsou klíčové nástroje pro správu a sdílení verzí softwarových projektů. Git umožňuje uchovávat jednotlivé verze projektu, sledovat změny, vracet se ke starším stavům a spravovat celý vývoj. GitHub pak poskytuje online platformu pro sdílení projektů a efektivní spolupráci.
Potřebné platformy
Co je Git?
Nástroj, který slouží k verzování projektu, neboli umožňuje uložení jednotlivých verzí projektu odděleně do repozitáře. Zde můžeme například prohlížet kód aktuální verze, jaké změny byly provedeny v dané verzi, a kdo danou verzi nahrál, ale zároveň také staré verze.
Co jsou commity?
Commit je konkrétní bod v historii projektu, který zaznamenává změny provedené v kódu nebo souborech. Commity jsou součástí verzovacího systému, který umožňuje sledovat a spravovat vývoj projektu v čase.
Co je repozitář?
Repozitář je místo, kde se ukládá celý projekt včetně kódu, souborů a historie změn. Slouží jako základní prvek verzovacího systému, který umožňuje sledovat vývoj projektu, vracet se k předchozím verzím a spolupracovat v týmu. Repozitář může být lokální (na tvém počítači) nebo vzdálený (uložený na serveru, jako je GitHub).
Co jsou větve?
Větve dovolují projekt rozvětvit na více verzí zároveň, a tím umožňují paralelní vývoj projektu. Každá větev funguje nezávisle na druhé větvi, spojení více větví do jedné se dosahuje pomocí merge. Hlavní větev je main/master, jedná se o stabilní verzi, která se může nahrát do produkce.
Jak na lokální verzování?
-
1. Vytvoření repozitáře
Než začneme náš projekt někam nahrávat, je potřeba si vytvořit samostatný repozitář na lokálním počítači.
Pro založení repozitáře si vytvoř složku, kde budeš mít tvůj projekt. V této složce spusť terminál a zadej daný příkaz:
git init
Inicializuje novy repozitár
-
2. Přidání souborů do commitu
Po vytvoření repozitáře je potřeba označit soubory, které chceš zahrnout do commitu. Toho dosáhneš pomocí následujícího příkazu:
git add {soubor}
Píše soubor do repozitáru
Pro kontrolu můžeš použít příkaz
git status
Zobrazí informace o stavu repozitáru
Daný příkaz nejen zobrazí úpravy, které budou v commitu nahrány
-
3. Vytvoření commitu
Když jsme si označili soubory, které chceme přidat do commitu, musíme i vytvořit samotný commit. Ten se vytváří následovně
git commit -m "Popis commitu"
Vytvoří commit
-m Popis commitu
Pokud používáš Git poprvé, budeš si muset nastavit údaje
git config --global user.email "email@email.cz"
git config --global user.name "Jméno"
Nastaví informace o tvém GitHub účtu
Jak dostat lokální repozitář na GitHub?
-
1. Vytvoření GitHub repozitáře
Zprvu je potřeba si vytvořit na GitHubu repozitář.. Začni tím, že si najdeš v pravém horním rohu symbol + a klikneš na “New repository”
Zde zadáš název repozitáře, jeho popis a viditelnost, a klikneš na “Create repository
-
2. Nahrání repozitáře na GitHub
Nyní je potřeba přidat místo, kam se budou změny nahrávat. K tomu slouží daný příkaz. Adresa nahrání se ti zobrazí po vytvoření repozitáře.
git remote add origin https://github.com/username/repo.git
Přidá vzdálený repozitář
remote spravuje seznam vzdálených repozitářů
add přidá vzdálený repozitář
origin název repozitáře
url ukazuje na vzdálený bod
Pro odeslání repozitáře použiješ příkaz
git push -u origin main
Odešle změny na GitHub
-u - upravuje na jaký vzdálený repozitář chceme lokální popsat
origin - název vzdáleného repozitáře
main - název větve, do které chceme nahrát změny
-
3. Autorizace ke GitHubu
GitHub bude po tobě vyžadovat autorizaci, že se jedná o tobě. Máš na výběr 2 možnosti:
-
Autorizace účtu
Pokud si vybereš autorizaci přes účet, vyskočí ti stránka pro autorizaci aplikace
-
Personal access token
Varianta token umožňuje použití speciálního tokenu. Jedná se o personal access token. Ten vytvoříme v “Settings -> Developer settings - Tokens (classic)”
Zde zadáš název klíče a permise, které chceš klíči přidělit, a klikneš na “Generate token”. Daný token si zkopíruj, jelikož si ho už nebudeš moct zobrazit. Tento token vložíš do kolonky “Personal access token”
Pokud vše proběhlo bez problému, měl by jsi být schopen najít pod “Your repositories” tvůj repozitář s obsahem commitu.
-
Přidání spolupracovníků
Přidání spolupracovníka dosáhneš v repozitáři přes “Settings - Collaborators”. Je potřeba, aby tvůj spolupracovník měl také účet na GitHubu, jelikož musíš zadat jeho jméno.
Jak vytvořit novou větev?
-
Přes terminál
Větev vytvoříš v terminálu pomocí příkazu.
git checkout -b “Název větve”
Aby se zobrazila na GitHubu, je opět potřeba změny pushnout. Na GitHubu se následně zobrazí nad listem souborů
-
Přes GitHub
Novou větev také můžeš vytvořit přes GitHub. Toho dosáhneš tak, že pod aktuální větví vybereš “View all branches”
Zde klikneš na “New branch”, napíšeš název větve a vybereš, z jaké větve bude kód pocházet.
Následně potřebuješ importovat danou větev do lokálního repozitáře. Toho dosáhneš přes daný příkaz:
git fetch origin
fetch stáhne nejnovější informace ze vzdáleného repozitáře
origin název vzdáleného repozitáře
Spojení větví do jedné
Pro propojení více větví do jedné se používá mergování.
-
Přes terminál
Půjdeš do větve, do které chceš přijmout změny, a spustíš příkaz:
git merge jina-vetev
Toto přidá soubory z jiné větve na danou větev.
-
Přes GitHub
Pokud však nechceš použít terminál, lze to udělat také přes GitHub. To lze udělat v záložce “Pull Request”. Zde si vybereš, jakou větev chceš mergnout do jaké, a dáš “Create pull request”
Pull request musíš následně potvrdit
GitHub conflict
Merge conflict vzniká, když se při sloučení dvou větví střetnou nekompatibilní změny ve stejném místě souboru.
K tomu dochází např. když dva vývojáři upravují stejný řádek kódu rozdílným způsobem. GitHub pak neví, kterou úpravu použít.
Při řešení konfliktu musíš ručně vybrat, jakou verzi chceš použít, a tu potvrdit. Tento proces se nedá nijak automatizovat.
Nežádoucí soubory na GitHubu
Existují soubory, které nechceš nahrát veřejně na GitHub. K tomu slouží soubor .gitignore. Do tohoto souboru zadáváš jednotlivé názvy souborů, které nechceš nahrát na GitHub.
GitHub desktop
Pokud nechceš spravovat GitHub repozitář přes terminál, můžeš k tomu využít program GitHub desktop. Jedná se o oficiální grafické rozhraní, které umožňuje lepší synchronizaci GitHub repozitáře a lokálního repozitáře.
Po nainstalování na tebe vyskočí úvodní obrazovka. Zde vybereš “Add an Existing Repository from you local drive…” a vybereš složku s projektem.
Daný projekt se ti následně zobrazí v programu, kde s ním můžeš pracovat.