Ответ
Git — это распределенная система контроля версий, которая позволяет отслеживать изменения в коде, совместно работать над проектами и управлять версиями. Вот основные команды Git, используемые в повседневной разработке:
git init
: Инициализирует новый локальный репозиторий Git в текущей директории. Это первый шаг для начала отслеживания изменений в проекте.git clone <url>
: Создает локальную копию удаленного репозитория. Используется для получения существующего проекта с сервера.git add <file(s)>
/git add .
: Добавляет изменения из рабочей диретории в индекс (staging area). Это подготавливает файлы к следующему коммиту.git commit -m "message"
: Фиксирует (сохраняет) изменения из индекса в историю репозитория. Сообщение коммита должно кратко описывать внесенные изменения.git status
: Показывает текущее состояние рабочей директории и индекса: какие файлы изменены, какие готовы к коммиту, а какие нет.git log
: Отображает историю коммитов текущей ветки, включая автора, дату и сообщение коммита.git branch
: Показывает список всех локальных веток. С опцией-a
покажет и удаленные.git checkout <branch>
/git switch <branch>
: Переключает рабочую директорию на указанную ветку или коммит.git switch
— более современная альтернатива для переключения веток.git merge <branch>
: Объединяет изменения из указанной ветки в текущую. Используется для интеграции функциональности из одной ветки в другую.git pull
: Забирает изменения из удаленного репозитория и автоматически объединяет их с текущей локальной веткой. Эквивалентноgit fetch
+git merge
.git push
: Отправляет зафиксированные изменения из локального репозитория в удаленный. Используется для публикации локальных изменений.git diff
: Показывает различия между рабочей директорией и индексом, между индексом и последним коммитом, или между двумя коммитами/ветками.
Пример типичного рабочего процесса:
# 1. Клонирование существующего репозитория
git clone https://github.com/user/repo.git
cd repo
# 2. Создание новой ветки для разработки фичи
git checkout -b feature-branch
# 3. Внесение изменений в файлы...
# 4. Добавление измененных файлов в индекс
git add .
# 5. Фиксация изменений
git commit -m "Add new feature: user authentication"
# 6. Отправка новой ветки с изменениями в удаленный репозиторий
git push origin feature-branch
# 7. Переключение на основную ветку (например, main/master)
git checkout main
# 8. Получение последних изменений из удаленного репозитория
git pull origin main
# 9. Объединение ветки feature-branch с основной
git merge feature-branch
# 10. Отправка объединенных изменений в удаленный репозиторий
git push origin main