Nastavení a konfigurace ⤢ git configNastaví vaše jméno, e-mail nebo editor jednou pro všechny repozitáře. git config --global user.name "Ada" ⤢ git config --global aliasDefinuje zkratku pro příkaz, který často píšete. git config --global alias.co checkout ⤢ git initVytvoří nový repozitář v aktuální složce. git init ⤢ git cloneZkopíruje vzdálený repozitář na váš počítač. git clone git@github.com:org/repo.git ⤢ git clone --depthZkopíruje jen nejnovější commity jedné větve. git clone --depth 1 --single-branch git@github.com:org/repo.git Základy snapshotů ⤢ git statusZobrazí, co je staged, změněné a netrackované. git status -sb ⤢ git addPřidá změny do indexu, aby se dostaly do dalšího commitu. git add src/app.ts ⤢ git add -pProchází změny po kusech a přidá jen ty, které přijmete. git add -p src/app.ts ⤢ git add -uPřidá změny všech trackovaných souborů bez přidávání nových. git add -u ⤢ git commitZaznamená staged změny jako nový commit. git commit -m "fix: null check" ⤢ git commit --amendNahradí poslední commit opravenou verzí. git commit --amend -m "fix: handle empty input" ⤢ git diffZobrazí nestaged změny, nebo se --staged ty staged. git diff --staged ⤢ git diff HEADZobrazí všechny změny od posledního commitu, ať už staged nebo ne. git diff HEAD Větve a slučování ⤢ git branchVypíše, vytvoří nebo smaže větve. git branch feature-x ⤢ git branch -dSmaže sloučenou větev (-D vynutí smazání, -a vypíše všechny větve). git branch -d feature-x ⤢ git switchPřepne větve (moderní náhrada checkout). git switch feature-x ⤢ git switch -cVytvoří novou větev a jedním krokem na ni přepne. git switch -c feature-x ⤢ git checkoutPřepne větve nebo obnoví soubory (starší, širší příkaz). git checkout feature-x ⤢ git mergeVnese změny jiné větve do aktuální větve. git merge feature-x ⤢ git merge --abortZruší konfliktní sloučení a vrátí větev do původního stavu. git merge --abort ⤢ git rebasePřehraje commity aktuální větve na vrchol jiné větve. git rebase main ⤢ git rebase -iSloučí, přeřadí nebo upraví commity během jejich přehrávání. git rebase -i main ⤢ git cherry-pickZkopíruje jednotlivý commit z jiné větve do této. git cherry-pick a1b2c3d ⤢ git tagOznačí commit čitelným štítkem, například verzí. git tag -a v1.2.0 ⤢ git worktreeCheckne jinou větev v samostatné složce současně s aktuální. git worktree add ../repo-feature feature-x Prozkoumávání historie ⤢ git logProchází historii commitů. git log --oneline --graph --decorate ⤢ git log --allProchází historii všech větví, ne jen aktuální. git log --oneline --graph --all ⤢ git showZobrazí plný diff a zprávu jednoho commitu. git show HEAD ⤢ git blameZobrazí, kdo naposledy změnil každý řádek souboru. git blame src/app.ts ⤢ git reflogZobrazí každý commit, na který HEAD ukazoval, včetně zahozených. git reflog ⤢ git bisectProhledává historii půlením, aby našel commit, který něco rozbil. git bisect start ⤢ git shortlogShrne commity podle autorů. git shortlog -sn ⤢ git describePojmenuje aktuální commit odpočtem od nejbližšího tagu. git describe --tags Spolupráce přes vzdálené repozitáře ⤢ git remoteVypíše nebo přidá vzdálené repozitáře. git remote add origin <url> ⤢ git remote -vVypíše vzdálené repozitáře včetně jejich fetch a push URL. git remote -v ⤢ git fetchStáhne vzdálené změny beze změny vašich větví. git fetch origin ⤢ git fetch --pruneStáhne vzdálené změny a zahodí refy smazaných vzdálených větví. git fetch --prune ⤢ git pullStáhne a sloučí vzdálené změny aktuální větve. git pull --rebase ⤢ git pushPošle lokální commity do vzdáleného repozitáře. git push -u origin feature-x ⤢ git push --force-with-leasePřepíše vzdálenou větev, ale jen pokud nikdo nepushl změny před vámi. git push --force-with-lease origin feature-x Vracení změn ⤢ git restoreZahodí změny v pracovním stromu, nebo je vyjme z indexu. git restore src/app.ts ⤢ git restore --stagedVyjme soubor z indexu a ponechá jeho úpravy v pracovním stromu. git restore --staged src/app.ts ⤢ git resetPřesune špičku aktuální větve a volitelně i index. git reset --hard HEAD~1 ⤢ git revertPřidá nový commit, který vrací dřívější změny (bezpečné pro sdílení). git revert HEAD ⤢ git cleanSmaže netrackované soubory a složky. git clean -fd Stash ⤢ git stashUloží necommitnutou práci a resetuje pracovní strom. git stash -u ⤢ git stash listZobrazí všechny uložené stash. git stash list ⤢ git stash applyZnovu použije stash a nechá ji v seznamu. git stash apply stash@{1} ⤢ git stash dropSmaže stash, kterou už nepotřebujete. git stash drop stash@{1} ⤢ git stash popZnovu použije nejnovější stash a zahodí ji. git stash pop Soubory a submoduly ⤢ git mvPřesune nebo přejmenuje soubor a přidá změnu do indexu. git mv old.ts src/new.ts ⤢ git rmSmaže soubor a přidá smazání do indexu. git rm src/old.ts ⤢ git submoduleTrackuje jiný repozitář jako složku uvnitř tohoto. git submodule add git@github.com:org/lib.git lib ⤢ git sparse-checkoutCheckne jen složky, které pojmenujete, z velkého repozitáře. git sparse-checkout set src docs ⤢ git archiveExportuje strom commitu jako soubor tar nebo zip. git archive -o repo.zip HEAD