repozitář - místo kde jsou uloženy všechny soubory (jako složka) a historie změn projektu.
commit - “záchytné body” ve vyvíjeném kódu, záznam změn v repozitáři včetně popis.
branch/větev - slouží pro rozšiřování hlavního kódu “bokem” bez editace hlavního kódu.
konflikt - nastává když se git nemůže automaticky rozhodnout jak sloučit různé commity, které modifikovaly stejnou část jednoho souboru. Je nutné ho ručně vyřešit a určit jak má vypadat výsledný soubor.
fork - kopie celého repozitáře od někoho jiného
master nebo main - hlavní větev (na které je hlavní kód).
git init # vytvoření lokálního repozitáře (přeměna složky na git)
git clone https://github.com/torvalds/linux.git # stažení kopie vzdáleného git repozitáře
cd linux/ # přejdu do git repozitáře
git status # vypsání stavu (aktuální větev a modifikované soubory)
git log # seznam commitů
git log --graph # seznam commitů (s cestičky)
git branch -a # výpis všech větví
git switch devel # přepnutí do jiné větve, zde do větve 'devel' (pokud existuje)
git switch -c mojevetev # vytvoření nové větve a přepnutí na ni
# po modifikaci nějakých souborů v repozitáři ...
git add file.x # přidání jednoho konkrétního modifikovaného souboru
git add . # přidání všech nových a modifikovaných souborů
git add -u # přidání pouze modifikovaných souborů
git commit # popsaní změn ve VIMu a vytvoření commitu
git commit -m 'Description of commit' # popsani změn a vytvoření commitu
git push origin mojevetev # odeslání mojí větve na server (i s commity, pokud ve větvy nějaké jsou)
git pull # update (stažení změn ze serveru)
git diff master mojevetev # vypsání změn vůči master větvi
# Spojení větví
git switch master # přepnutí do větve 'master' (větev do které budu připojovat jiné)
git merge mojevetev # připojení větve 'mojevetev' do 'master'
git push origin master # odeslání změn na server