Налаштування та конфігурація ⤢ git configЗадає ваше ім'я, email або редактор один раз для всіх репозиторіїв. git config --global user.name "Ada" ⤢ git config --global aliasВизначає коротке ім'я для команди, яку ви часто вводите. git config --global alias.co checkout ⤢ git initСтворює новий репозиторій у поточній папці. git init ⤢ git cloneКопіює віддалений репозиторій на вашу машину. git clone git@github.com:org/repo.git ⤢ git clone --depthКопіює лише найновіші коміти однієї гілки. git clone --depth 1 --single-branch git@github.com:org/repo.git Основи знімків ⤢ git statusПоказує, що додано до stage, змінено та не відстежується. git status -sb ⤢ git addДодає зміни до stage, щоб вони потрапили в наступний коміт. git add src/app.ts ⤢ git add -pПереглядає зміни фрагмент за фрагментом і додає до stage лише прийняті. git add -p src/app.ts ⤢ git add -uДодає до stage зміни всіх відстежуваних файлів, не додаючи нових. git add -u ⤢ git commitЗаписує додані до stage зміни як новий коміт. git commit -m "fix: null check" ⤢ git commit --amendЗамінює останній коміт виправленим. git commit --amend -m "fix: handle empty input" ⤢ git diffПоказує зміни, не додані до stage, або додані з --staged. git diff --staged ⤢ git diff HEADПоказує всі зміни з останнього коміту, додані до stage чи ні. git diff HEAD Гілки та злиття ⤢ git branchПоказує, створює або видаляє гілки. git branch feature-x ⤢ git branch -dВидаляє злитту гілку (-D робить це примусово, -a показує всі гілки). git branch -d feature-x ⤢ git switchПеремикає гілки (сучасна заміна checkout). git switch feature-x ⤢ git switch -cСтворює нову гілку й перемикається на неї за один крок. git switch -c feature-x ⤢ git checkoutПеремикає гілки або відновлює файли (старіша, ширша команда). git checkout feature-x ⤢ git mergeВносить зміни іншої гілки в поточну. git merge feature-x ⤢ git merge --abortСкасовує злиття з конфліктами й повертає гілку до попереднього стану. git merge --abort ⤢ git rebaseПовторно застосовує коміти поточної гілки поверх іншої гілки. git rebase main ⤢ git rebase -iОб'єднує, перевпорядковує або редагує коміти під час повторного застосування. git rebase -i main ⤢ git cherry-pickКопіює один коміт з іншої гілки в цю. git cherry-pick a1b2c3d ⤢ git tagПозначає коміт читабельною міткою, наприклад версією. git tag -a v1.2.0 ⤢ git worktreeВиводить іншу гілку в окрему папку одночасно з поточною. git worktree add ../repo-feature feature-x Дослідження історії ⤢ git logПроходить історію комітів. git log --oneline --graph --decorate ⤢ git log --allПроходить історію всіх гілок, а не лише поточної. git log --oneline --graph --all ⤢ git showПоказує повний diff і повідомлення одного коміту. git show HEAD ⤢ git blameПоказує, хто останнім змінював кожен рядок файлу. git blame src/app.ts ⤢ git reflogПоказує кожен коміт, на який вказував HEAD, включно з віддаленими. git reflog ⤢ git bisectШукає в історії половинами, щоб знайти коміт, який щось зламав. git bisect start ⤢ git shortlogПідсумовує коміти за авторами. git shortlog -sn ⤢ git describeНазиває поточний коміт відліком від найближчого тега. git describe --tags Віддалена співпраця ⤢ git remoteПоказує або додає віддалені репозиторії. git remote add origin <url> ⤢ git remote -vПоказує віддалені сховища з їхніми URL для fetch і push. git remote -v ⤢ git fetchЗавантажує віддалені зміни, не змінюючи ваші гілки. git fetch origin ⤢ git fetch --pruneЗавантажує віддалені зміни та відкидає посилання на видалені віддалені гілки. git fetch --prune ⤢ git pullЗавантажує та зливає віддалені зміни поточної гілки. git pull --rebase ⤢ git pushНадсилає локальні коміти у віддалене сховище. git push -u origin feature-x ⤢ git push --force-with-leaseПерезаписує віддалену гілку, але лише якщо ніхто не зробив push раніше. git push --force-with-lease origin feature-x Скасування змін ⤢ git restoreВідкидає зміни робочої директорії або прибирає їх зі stage. git restore src/app.ts ⤢ git restore --stagedПрибирає файл зі stage і зберігає його зміни в робочій директорії. git restore --staged src/app.ts ⤢ git resetПереміщує вершину поточної гілки та, за потреби, індекс. git reset --hard HEAD~1 ⤢ git revertДодає новий коміт, який скасовує попередній (безпечно поширювати). git revert HEAD ⤢ git cleanВидаляє невідстежувані файли та папки. git clean -fd Stash ⤢ git stashЗберігає незакомічену роботу й скидає робочу директорію. git stash -u ⤢ git stash listПоказує всі stash, які ви зберегли. git stash list ⤢ git stash applyЗнову застосовує stash і зберігає його в списку. git stash apply stash@{1} ⤢ git stash dropВидаляє stash, який вам більше не потрібен. git stash drop stash@{1} ⤢ git stash popЗнову застосовує найновіший stash і видаляє його. git stash pop Файли та підмодулі ⤢ git mvПереміщує або перейменовує файл і додає зміну до stage. git mv old.ts src/new.ts ⤢ git rmВидаляє файл і додає видалення до stage. git rm src/old.ts ⤢ git submoduleВідстежує інший репозиторій як папку всередині цього. git submodule add git@github.com:org/lib.git lib ⤢ git sparse-checkoutВиводить лише названі вами папки з великого репозиторію. git sparse-checkout set src docs ⤢ git archiveЕкспортує дерево коміту як файл tar або zip. git archive -o repo.zip HEAD