Ответ
Основные команды Git для ежедневной работы:
Начало работы и базовые операции:
git init— инициализирует новый репозиторий.git clone <url>— клонирует удаленный репозиторий.git add <file>илиgit add .— добавляет изменения в индекс (staging area).git commit -m "сообщение"— фиксирует изменения из индекса в репозиторий.git status— показывает состояние рабочей директории и индекса.
Ветвление и слияние:
git branch— показывает список веток.git checkout -b <branch_name>— создает новую ветку и переключается на нее.git checkout <branch_name>— переключается на существующую ветку.git merge <branch_name>— сливает указанную ветку в текущую.git rebase <branch_name>— перебазирует текущую ветку на указанную (изменяет историю).
Синхронизация с удаленным репозиторием:
git push origin <branch_name>— отправляет локальные коммиты в удаленную ветку.git pull origin <branch_name>— забирает изменения из удаленной ветки и сливает с текущей ( =git fetch+git merge).git fetch origin— забирает изменения из удаленного репозитория, но не сливает их.
Просмотр истории и отмена изменений:
git log --oneline --graph— компактный вывод истории с визуализацией ветвления.git diff— показывает неиндексированные изменения.git diff --staged— показывает изменения, добавленные в индекс.git restore <file>— отменяет изменения в файле (до индексации).git reset --soft HEAD~1— отменяет последний коммит, оставляя изменения проиндексированными.
Типовой рабочий процесс:
# Клонирование репозитория
git clone https://github.com/example/project.git
cd project
# Создание ветки для новой функциональности
git checkout -b feature/new-login
# Внесение изменений, добавление и коммит
git add .
git commit -m "Add new login form"
# Отправка ветки на сервер
git push origin feature/new-login
# Далее создается Pull Request (Merge Request) в интерфейсе GitHub/GitLab