Как пользоваться: Шпаргалка Git
- Введите свои значения (ветку, remote, файл, коммит) в полях сверху — все примеры на странице обновятся сразу.
- Найдите нужную команду через поиск или перейдите к разделу.
- Нажмите Копировать, чтобы скопировать готовую строку, или Копировать раздел, чтобы получить блок с комментариями.
- Команды, отмеченные как опасные, удаляют или перезаписывают данные — прочитайте примечание перед запуском.
Работа с Git за минуту
Большинство задач идут по одному циклу: создаёте ветку командой git switch -c, вносите изменения, проверяете их через git diff, добавляете в индекс командой git add -p, делаете коммит и отправляете его командой git push -u. Перед открытием pull request обновите ветку командой git pull --rebase origin main, чтобы она корректно легла поверх свежей main.
Команды, которые переписывают историю
commit --amend, rebase, reset и push --force меняют уже существующие коммиты. В ветке, которой пользуетесь только вы, это нормально, но в общих ветках остальным участникам придётся восстанавливать свои копии. В общих ветках отменяйте изменения через git revert, а если без force-push не обойтись, используйте --force-with-lease.
Ничего не теряется 30 дней
Даже после неудачного reset --hard или rebase закоммиченная работа остаётся в репозитории. git reflog показывает, где был HEAD, так что можно вернуться к любому недавнему состоянию. Исключение — незакоммиченные изменения: коммитьте или сохраняйте их в stash почаще.
Создавайте команды для конкретных ситуаций в генераторе команд Git, а новые репозитории начинайте с генератора .gitignore.
Также ищут как: git cheat sheet, git rebase, git stash.
Инструменты, которые хорошо сочетаются с Шпаргалка Git
- Шпаргалка Docker — Команды Docker и Docker Compose, которые нужны каждую неделю, с пояснением в одну строку.
- Шпаргалка по Linux-командам — Команды Linux и bash, которые разработчики используют на серверах и ноутбуках: файлы, поиск, права доступа, процессы, логи, сеть и SSH.
- Промпты для разработчиков — Проверенные промпты для задач, которые вы решаете каждый день: отладка, ревью, тесты, рефакторинг, SQL, сообщения коммитов и документация.
- Шпаргалка PowerShell — Команды PowerShell, которые разработчики и администраторы используют каждый день в Windows, а также в PowerShell 7 на macOS и Linux.
Часто задаваемые вопросы
В чём разница между git fetch и git pull?
git fetch загружает новые коммиты из remote, но не трогает вашу ветку. git pull делает fetch, а затем сливает (или перемещает через rebase) эти коммиты в текущую ветку.Как отменить последний коммит?
git reset --soft HEAD~1, чтобы отменить коммит и оставить его изменения в индексе. Если коммит уже отправлен в общую ветку, лучше использовать git revert <commit>, чтобы не переписывать чужую историю.Что лучше: merge или rebase?
Как вернуть коммит, который потерялся после reset?
git reflog, найдите строку из времени до reset и выполните git reset --hard HEAD@{n} или создайте ветку от хеша этого коммита.