Что такое локальный репозиторий в Git и как с ним работать?

«Что такое локальный репозиторий в Git и как с ним работать?» — вопрос из категории DevOps, который задают на 10% собеседований Java Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Локальный репозиторий Git — это полная копия проекта со всей его историей, хранящаяся на вашем компьютере. Он состоит из рабочей директории, индекса (staging area) и базы объектов в скрытой папке .git.

Базовые команды для работы с локальным репозиторием:

  1. Инициализация: Создает новый локальный репозиторий в текущей директории.

    git init
  2. Клонирование: Создает локальную копию удаленного репозитория.

    git clone <url-репозитория>
  3. Добавление изменений в индекс (staging): Подготавливает файлы к коммиту.

    git add <имя_файла>      # Добавить конкретный файл
    git add .                # Добавить все измененные файлы
  4. Фиксация изменений (commit): Создает снимок состояния из проиндексированных файлов.

    git commit -m "Краткое описание изменений"
  5. Просмотр истории и состояния:

    git status               # Показать состояние рабочей директории и индекса
    git log --oneline        # Показать компактную историю коммитов
    git diff                 # Показать непроиндексированные изменения

Ключевые концепции:

  • Рабочая директория: Файлы, с которыми вы непосредственно работаете.
  • Индекс (Staging Area): Промежуточная область, где собираются изменения для следующего коммита.
  • HEAD: Указатель на текущий коммит или ветку.

Все операции коммита, ветвления, слияния сначала выполняются локально, что позволяет работать без подключения к сети.