Git — это мощная и гибкая система контроля версий, с которой сталкивается почти каждый разработчик, вне зависимости от языка программирования или области работы. Она даёт возможность контролировать изменения в коде, откатываться к более ранним версиям проекта, вести параллельную разработку и эффективно взаимодействовать с другими участниками команды. Благодаря распределённой архитектуре Git обеспечивает автономную работу с репозиторием без постоянного подключения к серверу, а также защищает историю проекта от потерь и конфликтов. Однако, несмотря на всю мощь и удобство Git, его команды не всегда легко держать в голове — особенно новичкам или тем, кто использует систему от случая к случаю. Эта краткая шпаргалка поможет быстро вспомнить основные действия в Git без необходимости каждый раз заглядывать в документацию.
Инициализация и клонирование репозитория
Инициализирует репозиторий Git в выбранной папке.
Скачивает удалённый репозиторий и создаёт его локальную копию.
Отслеживание статуса и просмотр истории коммитов
Выводит текущее состояние рабочей директории и индекса (какие файлы изменены, добавлены, неотслеживаемые и т.д.).
Показывает историю коммитов в обратном хронологическом порядке.
Упрощённая история: один коммит — одна строка. Удобно для быстрого обзора.
Фиксация изменений и работа с коммитами
Выбирает конкретный файл для включения в будущий коммит, добавляя его в индекс.
Подготавливает ко внесению в коммит все изменённые и новые файлы в текущем каталоге и его подпапках.
Формирует новый коммит с комментарием, описывающим суть внесённых правок.
Позволяет одновременно добавить изменения в уже отслеживаемых файлах и выполнить коммит. Не применимо к новым, ранее не добавленным файлам.
Работа с ветками и переход между ними
Отображает перечень всех локальных веток проекта.
Создаёт новую ветку, оставаясь при этом в текущей.
Осуществляет переход на указанную ветку.
Комбинированная команда: создаёт новую ветку и сразу же переключается на неё.
Объединяет выбранную ветку с текущей, добавляя её изменения.
Синхронизация с удалённым репозиторием
Получение изменений из удалённого репозитория и автоматическое слияние с локальной веткой.
Отправка локальных изменений в удалённый репозиторий.
Отправка новой ветки и установка связи с origin (удалённым репозиторием).
Откат и отмена изменений
Отменяет изменения в файле, возвращая его к последнему зафиксированному состоянию.
Удаляет файл из индекса, но не из рабочей директории.
Полный откат всех изменений в рабочей директории и индексе.
Создаёт новый коммит, отменяющий изменения выбранного коммита (без удаления истории).
Временное сохранение и другие полезные команды
Временно сохраняет незакоммиченные изменения, освобождая рабочую директорию.
Восстанавливает изменения, сохранённые в последнем stash.
Показывает список подключённых удалённых репозиториев и их URL.
Показывает различия между рабочей директорией и индексом/коммитом.
Ответы на часто задаваемые вопросы (FAQ)
Что делать, если случайно удалил файл?
Если файл был удалён, но ещё не закоммичен, можно вернуть его командой git checkout — <файл>
Если уже был коммит — используйте git log и затем git checkout <коммит> — <файл>
Можно ли переименовать ветку?
Да. Локально: git branch -m old_name new_name
Для удалённой ветки: создайте новую, отправьте её (git push -u origin new_name), затем удалите старую git push origin –delete old_name
Как отменить последний коммит, но сохранить изменения?
откатит коммит, оставив изменения в индексе.
Как объединить несколько коммитов в один?
Используйте
, где N — количество последних коммитов, которые нужно объединить.
Полезные советы
- Придерживайтесь читаемого и однозначного стиля сообщений к коммитам. Лучше «fix: неправильно отображается кнопка», чем просто «фикс».
- Используйте ветки для новых фич, исправлений и экспериментов — это сохраняет чистоту основной ветки и помогает в командной разработке.
- Перед push всегда делайте pull, особенно при совместной работе — это поможет избежать конфликтов.
- Не забывайте добавлять в [.gitignore] временные файлы, кэш и чувствительные данные.
- Освойте rebase— это мощный инструмент, но с ним нужно быть аккуратным, особенно при работе с опубликованными коммитами.
- Избегайте использования git reset –hard, если не уверены — эта команда безвозвратно удаляет локальные изменения.