Всі інструменти
Безкоштовно

Доступний для пошуку та друку довідник з Git — конфігурація, гілки, злиття, перебазування, віддалені репозиторії, stash, теги та скасування змін. Безкоштовно.

Налаштування та конфігурація

10
git config --global user.name "Jane Doe"
Встановити ім'я для ваших комітів
git config --global user.email "jane@example.com"
Встановити email для ваших комітів
git config --global init.defaultBranch main
Нові репозиторії починати з гілки "main"
git config --global core.editor "code --wait"
Використовувати VS Code як редактор Git за замовчуванням
git config --global pull.rebase true
Rebase замість merge при pull
git config --global alias.co checkout
Створити псевдонім-скорочення (git co)
git config --global --list
Показати всі глобальні значення конфігурації
git config user.email
Вивести email для поточного репозиторію
git config --global color.ui auto
Увімкнути кольоровий вивід командного рядка
git help <command>
Відкрити сторінку довідки для команди

Створення та клонування репозиторіїв

9
git init
Ініціалізувати новий репозиторій у поточній теці
git init my-project
Створити новий репозиторій у новому каталозі
git clone https://example.com/repo.git
Клонувати віддалений репозиторій через HTTPS
git clone git@example.com:user/repo.git
Клонувати віддалений репозиторій через SSH
git clone <url> my-dir
Клонувати у вказаний каталог
git clone --depth 1 <url>
Поверхневе клонування лише з останнім комітом
git clone --branch dev <url>
Клонувати та перейти на вказану гілку
git clone --recurse-submodules <url>
Клонувати та ініціалізувати всі підмодулі
git remote add origin <url>
Додати remote до наявного локального репозиторію

Індексація та коміти

11
git add file.txt
Додати один файл до індексу для наступного коміту
git add .
Додати до індексу всі зміни в поточному каталозі
git add -A
Додати всі зміни до індексу, включно з видаленнями
git add -p
Інтерактивно індексувати вибрані фрагменти
git commit -m "Add login form"
Закомітити проіндексовані зміни з повідомленням
git commit -am "Fix typo"
Індексувати відстежувані файли та закомітити одразу
git commit --amend
Відредагувати останній коміт
git commit --amend --no-edit
Додати проіндексовані зміни до останнього коміту
git rm file.txt
Видалити файл та проіндексувати видалення
git mv old.txt new.txt
Перейменувати чи перемістити файл та проіндексувати
git reset file.txt
Прибрати файл з індексу, зберігши зміни

Гілки

10
git branch
Показати всі локальні гілки
git branch -a
Показати локальні та віддалені гілки
git switch -c feature/login
Створити нову гілку та перейти на неї
git switch main
Перейти на наявну гілку
git checkout -b hotfix
Класичний спосіб створити та перемкнути гілки
git branch -m old-name new-name
Перейменувати гілку
git branch -d feature/login
Видалити злиту локальну гілку
git branch -D feature/login
Примусово видалити незлиту локальну гілку
git push origin --delete feature/login
Видалити гілку на remote
git switch -
Повернутися до попередньої гілки

Злиття та rebase

10
git merge feature/login
Злити гілку в поточну
git merge --no-ff feature/login
Злити та завжди створювати merge-коміт
git merge --squash feature/login
Об'єднати гілку в одну проіндексовану зміну
git merge --abort
Скасувати злиття з конфліктами
git rebase main
Перенести коміти поточної гілки на main
git rebase -i HEAD~3
Інтерактивно відредагувати останні 3 коміти
git rebase --continue
Продовжити rebase після вирішення конфліктів
git rebase --abort
Скасувати поточний rebase
git cherry-pick <hash>
Застосувати один коміт до поточної гілки
git mergetool
Запустити інструмент для вирішення конфліктів злиття

Remotes та синхронізація

11
git remote -v
Показати налаштовані remotes та їхні URL
git remote add upstream <url>
Додати другий remote з ім'ям upstream
git remote set-url origin <url>
Змінити URL наявного remote
git fetch
Завантажити віддалені зміни без злиття
git fetch --all --prune
Отримати всі remotes та видалити застарілі гілки
git pull
Отримати та інтегрувати віддалені зміни
git pull --rebase
Pull із rebase локальних комітів зверху
git push
Завантажити локальні коміти на remote
git push -u origin main
Push із встановленням upstream-гілки
git push --force-with-lease
Безпечний force-push без перезапису чужого
git push origin --tags
Завантажити всі локальні теги на remote

Перегляд та порівняння

10
git status
Показати проіндексовані, непроіндексовані та невідстежувані файли
git status -s
Показати статус у компактному короткому форматі
git diff
Показати непроіндексовані зміни щодо індексу
git diff --staged
Показати зміни, проіндексовані для наступного коміту
git diff main..feature
Порівняти дві гілки
git diff HEAD~1 HEAD
Порівняти останній коміт з його батьком
git show <hash>
Показати деталі та diff одного коміту
git show HEAD:file.txt
Показати файл таким, яким він був у коміті
git log --stat
Показати коміти зі зведенням змінених файлів
git shortlog -sn
Підрахувати коміти за авторами

Скасування змін

10
git restore file.txt
Відкинути непроіндексовані зміни у файлі
git restore --staged file.txt
Прибрати файл з індексу, зберігши зміни
git restore --source=HEAD~1 file.txt
Відновити файл з попереднього коміту
git checkout -- file.txt
Класичний спосіб відкинути локальні зміни
git reset --soft HEAD~1
Скасувати останній коміт, зберігши зміни в індексі
git reset --mixed HEAD~1
Скасувати останній коміт, зберігши зміни поза індексом
git reset --hard HEAD~1
Скасувати останній коміт та відкинути зміни
git revert <hash>
Створити коміт, що скасовує інший коміт
git clean -fd
Видалити невідстежувані файли та каталоги
git clean -nd
Переглянути, що видалить clean

Stash (схованка)

10
git stash
Зберегти незакомічені зміни та очистити дерево
git stash push -m "wip"
Сховати зміни з описовим повідомленням
git stash -u
Сховати разом з невідстежуваними файлами
git stash list
Показати всі набори схованих змін
git stash show -p
Показати diff останньої схованки
git stash apply
Повторно застосувати останню схованку та зберегти її
git stash pop
Повторно застосувати останню схованку та видалити її
git stash apply stash@{2}
Повторно застосувати конкретну схованку за індексом
git stash drop stash@{0}
Видалити один запис схованки
git stash clear
Видалити всі записи схованок

Теги

9
git tag
Показати всі теги
git tag v1.0.0
Створити легкий тег на HEAD
git tag -a v1.0.0 -m "Release 1.0.0"
Створити анотований тег з повідомленням
git tag -a v1.0.0 <hash>
Позначити тегом конкретний минулий коміт
git show v1.0.0
Показати деталі тега
git push origin v1.0.0
Завантажити один тег на remote
git push origin --tags
Завантажити всі локальні теги на remote
git tag -d v1.0.0
Видалити тег локально
git push origin --delete v1.0.0
Видалити тег на remote

Логи та історія

12
git log
Показати повну історію комітів
git log --oneline
Показати компактний лог по рядку на коміт
git log --oneline --graph --all
Візуалізувати гілки як ASCII-граф
git log -p
Показати історію комітів із diff
git log --author="Jane"
Фільтрувати історію за автором
git log --since="2 weeks ago"
Фільтрувати історію за діапазоном дат
git log --pretty=format:"%h %an %s"
Налаштувати формат виводу логу
git blame file.txt
Показати, хто востаннє змінив кожен рядок
git reflog
Показати історію переміщень HEAD
git bisect start
Розпочати бінарний пошук поганого коміту
git bisect good <hash>
Позначити коміт як добрий під час bisect
git bisect bad
Позначити поточний коміт як поганий

Жоден запис не відповідає “:q”.


Поділитися
Потрібна допомога?
Виникла проблема з цим інструментом? Повідомте нас.
Повідомити про проблему

Додайте цей безкоштовний інструмент на власний вебсайт — скопіюйте та вставте код нижче.