Git pro začátečníky: prvních 15 příkazů, které opravdu použijete
Praktický úvod do Gitu – instalace, první repozitář, commit, historie, vracení změn a napojení na GitHub. Bez teorie navíc, s příkazy k vyzkoušení.
Git je systém pro správu verzí. Ukládá historii vašeho projektu po malých krocích (commitech), takže se můžete kdykoli vrátit, porovnat změny nebo pracovat s dalšími lidmi bez posílání ZIPů e-mailem. Tento návod vás provede vším, co potřebujete první týden.
Instalace a základní nastavení
Na Debianu/Ubuntu:
sudo apt update && sudo apt install git
git --version
Na Windows stáhněte Git for Windows z git-scm.com, na macOS stačí xcode-select --install nebo brew install git.
Hned po instalaci nastavte jméno a e-mail – objeví se v každém commitu:
git config --global user.name "Jan Novák"
git config --global user.email "[email protected]"
git config --global init.defaultBranch main
Poslední řádek zajistí, že nové repozitáře budou mít hlavní větev main (výchozí jméno, které používá i GitHub).
Tři místa, kde žijí vaše soubory
Pochopení tohoto modelu ušetří spoustu zmatku:
| Oblast | Co to je | Jak se tam soubor dostane |
|---|---|---|
| Pracovní adresář | soubory, jak je vidíte v editoru | prostě je upravíte |
| Staging (index) | „košík“ změn připravených do commitu | git add |
| Repozitář | uložená historie commitů | git commit |
První repozitář
mkdir muj-projekt && cd muj-projekt
git init
echo "# Můj projekt" > README.md
git status
git add README.md
git commit -m "Přidat README"
git status je váš nejlepší přítel – spouštějte ho kdykoli nevíte, v jakém stavu jste. Ukáže, které soubory jsou změněné, které připravené ke commitu a na jaké větvi stojíte.
Prohlížení historie a změn
git log --oneline --graph # stručná historie
git diff # neuložené změny oproti stagingu
git diff --staged # co půjde do příštího commitu
git show HEAD # detail posledního commitu
HEAD znamená „kde právě jsem“, typicky poslední commit aktuální větve.
Vracení změn (bez paniky)
Nejčastější situace a bezpečné řešení:
# Zahodit neuložené úpravy v souboru
git restore index.html
# Vyndat soubor ze stagingu (úpravy zůstanou)
git restore --staged index.html
# Opravit zprávu posledního commitu (jen pokud ještě není pushnutý)
git commit --amend -m "Lepší zpráva"
# Vrátit commit, který už je na serveru – vytvoří nový "opačný" commit
git revert a1b2c3d
Pozor na git reset --hard – smaže neuložené změny nenávratně. Začátečníkům doporučujeme revert a restore.
Větve v kostce
Větev je samostatná linie vývoje. Novou funkci si vyzkoušíte, aniž byste rozbili main:
git switch -c nova-funkce # vytvořit a přepnout
# ... úpravy, commity ...
git switch main
git merge nova-funkce
git branch -d nova-funkce # smazat hotovou větev
Napojení na GitHub
Vytvořte na GitHubu prázdný repozitář (bez README) a pak:
git remote add origin [email protected]:jannovak/muj-projekt.git
git push -u origin main
Pro SSH adresu potřebujete SSH klíč přidaný v GitHubu (Settings → SSH and GPG keys):
ssh-keygen -t ed25519 -C "[email protected]"
cat ~/.ssh/id_ed25519.pub # obsah vložte do GitHubu
ssh -T [email protected] # ověření
Další práce je pak koloběh:
git pull # stáhnout změny ostatních
git add .
git commit -m "Popis změny"
git push
Klonování existujícího projektu
git clone https://github.com/uzivatel/projekt.git
cd projekt
Klon obsahuje celou historii a remote origin je nastavený automaticky.
Nejčastější chyby začátečníků
- Commit všeho najednou. Dělejte menší commity s jednou logickou změnou – snáz se v nich hledá a vrací.
- Hesla a
.envv repozitáři. Hned na začátku si založte.gitignorea citlivé soubory do něj přidejte. pushodmítnut („rejected, fetch first“). Na serveru jsou novější změny. Spusťtegit pull, vyřešte případný konflikt a pushněte znovu.- Práce přímo v
main. U čehokoli většího si založte větev.
Kam dál
Až vám budou základy připadat přirozené, podívejte se na rozdíl mezi merge a rebase a na psaní dobrých commit zpráv. Pokud se zaseknete u konkrétní chybové hlášky, vložte ji do ColdHost AI v režimu Výuka – vysvětlí, co se stalo, a navrhne bezpečný postup.