apt install git
dnf install gitDistribuovaný verzovací systém (DVCS)
Každý vývojář má plnou kopii historie
Rychlé lokální operace
Silná práce s větvemi
Historie změn
Možnost návratu zpět
Paralelní vývoj
Code review workflow
Integrace s CI/CD
Projekt + historie
Lokální / vzdálený (remote)
Snapshot projektu v čase
Obsahuje autora, datum, zprávu
Oddělená vývojová větev
Umožňuje paralelní vývoj
Ukazatel na aktuální commit
Working directory = aktuální soubory
Staging area (index) = připravené změny pro commit
apt install git
dnf install gitgit config --global user.name "Jmeno Prijmeni"
git config --global user.email "email@example.com"git initgit clone https://example.com/repo.gitgit statusgit add soubor.txt
git add .git commit -m "Popis změny"git log
git log --oneline --graph --decorategit branch feature-x
git switch feature-xNebo:
git switch -c feature-xgit switch main
git merge feature-xgit switch feature-x
git rebase mainRozdíl: - merge → zachovává historii větvení - rebase → lineární historie
git remote add origin https://example.com/repo.gitgit push origin maingit fetch
git pullRozdíl: - fetch → pouze stáhne změny - pull → fetch + merge
Jeden commit = jedna logická změna
Nepřidávat rozpracovaný kód
Smysluplné zprávy
Krátký popis (max 50 znaků) Detailnější vysvětlení změny.
feat: přidána autentizace fix: oprava validace vstupu refactor: úprava struktury modulu docs: aktualizace dokumentace test: přidány testy
Úprava stejného řádku ve dvou větvích
<<<<<<< HEAD moje změna ======= cizí změna >>>>>>> branch
Ručně upravit soubor
git add
git commit
Definuje, které soubory Git nesleduje
__pycache__/ *.pyc .env .venv/ dist/
node_modules/ dist/ .env
Commitování velkých binárních souborů
Commitování hesel (.env)
Práce přímo na main větvi
Příliš velké commity
Používání pull místo fetch + merge bez kontroly
Vytvořit větev z main
Implementovat změnu
Průběžně commitovat
Aktualizovat větev (rebase/merge)
Vytvořit Pull Request
Code review
Merge do main
git rebase -i HEAD~5Možnosti: - squash - reword - drop
git stash
git stash popgit reset --soft HEAD~1
git reset --hard HEAD~1Git je nástroj pro bezpečný vývoj
Pracuj v malých logických commitech
Používej větve
Piš kvalitní commit zprávy
Chraň main větev
Pravidelně synchronizuj změny