Asetukset ja konfiguraatio ⤢ git configAsettaa nimesi, sähköpostisi tai editorisi kerran kaikille repoille. git config --global user.name "Ada" ⤢ git config --global aliasMäärittää lyhytnimen komennolle, jonka kirjoitat usein. git config --global alias.co checkout ⤢ git initLuo uuden repositorion nykyiseen kansioon. git init ⤢ git cloneKopioi etärepositorion koneellesi. git clone git@github.com:org/repo.git ⤢ git clone --depthKopioi vain yhden haaran uusimmat commitit. git clone --depth 1 --single-branch git@github.com:org/repo.git Snapshotin perusteet ⤢ git statusNäyttää stagatut, muokatut ja jäljittämättömät muutokset. git status -sb ⤢ git addStagaa muutokset, jotta ne päätyvät seuraavaan commitiin. git add src/app.ts ⤢ git add -pKäy muutokset läpi paloittain ja stagaa vain hyväksymäsi. git add -p src/app.ts ⤢ git add -uStagaa muutokset kaikkiin jäljitettyihin tiedostoihin lisäämättä uusia. git add -u ⤢ git commitTallentaa stagatut muutokset uutena commitina. git commit -m "fix: null check" ⤢ git commit --amendKorvaa viimeisen commitin korjatulla. git commit --amend -m "fix: handle empty input" ⤢ git diffNäyttää stagamattomat muutokset, tai stagatut --staged-lipulla. git diff --staged ⤢ git diff HEADNäyttää jokaisen muutoksen viimeisestä commitista stagattuna tai ei. git diff HEAD Haarat ja merge ⤢ git branchListaa, luo tai poistaa haaroja. git branch feature-x ⤢ git branch -dPoistaa mergatun haaran (-D pakottaa, -a listaa kaikki haarat). git branch -d feature-x ⤢ git switchVaihtaa haaraa (checkoutin moderni korvaaja). git switch feature-x ⤢ git switch -cLuo uuden haaran ja vaihtaa siihen yhdellä askeleella. git switch -c feature-x ⤢ git checkoutVaihtaa haaraa tai palauttaa tiedostoja (vanhempi, laajempi komento). git checkout feature-x ⤢ git mergeTuo toisen haaran muutokset nykyiseen haaraan. git merge feature-x ⤢ git merge --abortPeruuttaa ristiriitaisen mergen ja palauttaa haaran aiempaan tilaan. git merge --abort ⤢ git rebaseToistaa nykyisen haaran commitit toisen haaran päälle. git rebase main ⤢ git rebase -iYhdistää, järjestää uudelleen tai muokkaa committeja toiston aikana. git rebase -i main ⤢ git cherry-pickKopioi yhden commitin toisesta haarasta tähän. git cherry-pick a1b2c3d ⤢ git tagMerkitsee commitin luettavalla nimellä, kuten versiolla. git tag -a v1.2.0 ⤢ git worktreeKirjaa ulos toisen haaran erilliseen kansioon samanaikaisesti. git worktree add ../repo-feature feature-x Historian tutkiminen ⤢ git logKäy commit-historiaa läpi. git log --oneline --graph --decorate ⤢ git log --allKäy läpi historian kaikista haaroista, ei vain nykyisestä. git log --oneline --graph --all ⤢ git showNäyttää yhden commitin täyden diffin ja viestin. git show HEAD ⤢ git blameNäyttää, kuka muokkasi kutakin tiedoston riviä viimeksi. git blame src/app.ts ⤢ git reflogNäyttää jokaisen commitin, johon HEAD on osoittanut, hylätyt mukaan lukien. git reflog ⤢ git bisectEtsii historiaa puolittamalla commitin, joka rikkoi jotain. git bisect start ⤢ git shortlogTiivistää commitit kirjoittajittain. git shortlog -sn ⤢ git describeNimeää nykyisen commitin laskien lähimmästä tagista. git describe --tags Etäyhteistyö ⤢ git remoteListaa tai lisää etärepositorioita. git remote add origin <url> ⤢ git remote -vListaa remotet niiden fetch- ja push-URL-osoitteineen. git remote -v ⤢ git fetchLataa etämuutokset muuttamatta haarojasi. git fetch origin ⤢ git fetch --pruneLataa etämuutokset ja poistaa viittaukset poistettuihin etähaaroihin. git fetch --prune ⤢ git pullLataa ja mergetää nykyisen haaran etämuutokset. git pull --rebase ⤢ git pushLähettää paikalliset commitit remoteen. git push -u origin feature-x ⤢ git push --force-with-leaseYlikirjoittaa etähaaran, mutta vain jos kukaan ei pushannut ensin. git push --force-with-lease origin feature-x Muutosten kumoaminen ⤢ git restoreHylkää työhakemiston muutokset tai poistaa ne stagelta. git restore src/app.ts ⤢ git restore --stagedPoistaa tiedoston stagelta ja säilyttää sen muokkaukset työhakemistossa. git restore --staged src/app.ts ⤢ git resetSiirtää nykyisen haaran kärkeä ja valinnaisesti indeksiä. git reset --hard HEAD~1 ⤢ git revertLisää uuden commitin, joka kumoaa aiemman (turvallinen jakaa). git revert HEAD ⤢ git cleanPoistaa jäljittämättömät tiedostot ja kansiot. git clean -fd Stash ⤢ git stashTallentaa commitoimattoman työn ja nollaa työhakemiston. git stash -u ⤢ git stash listNäyttää kaikki tallentamasi stashit. git stash list ⤢ git stash applySoveltaa stashia uudelleen ja säilyttää sen. git stash apply stash@{1} ⤢ git stash dropPoistaa stashin, jota et enää tarvitse. git stash drop stash@{1} ⤢ git stash popSoveltaa viimeisimmän stashin ja poistaa sen. git stash pop Tiedostot ja alimoduulit ⤢ git mvSiirtää tai nimeää tiedoston uudelleen ja stagaa muutoksen. git mv old.ts src/new.ts ⤢ git rmPoistaa tiedoston ja stagaa poiston. git rm src/old.ts ⤢ git submoduleSeuraa toista repositoriota kansiona tämän sisällä. git submodule add git@github.com:org/lib.git lib ⤢ git sparse-checkoutKirjaa ulos vain nimeämäsi kansiot suuresta repositoriosta. git sparse-checkout set src docs ⤢ git archiveVie commitin puun tar- tai zip-tiedostona. git archive -o repo.zip HEAD