Область подготовки
Часть раздела Контроль версий путешествия по Terminal на Coddy — урок 9 из 58.
Git не фиксирует каждое изменение автоматически. Вместо этого вы явно выбираете, какие изменения попадут в следующий снимок. Этот двухэтапный рабочий процесс строится вокруг области подготовленных файлов (staging area).
Представьте это как буфер обмена для следующего коммита. Файл проходит через три состояния:
- Рабочий каталог: где вы обычно редактируете файлы.
- Область подготовленных файлов: изменения, которые вы пометили для следующего коммита.
- Репозиторий: постоянная история после выполнения коммита.
Смысл индексации (staging) заключается в контроле. Вы можете отредактировать десять файлов, но добавить в индекс только два, относящихся к исправлению одной ошибки, закоммитить их, а затем проиндексировать и закоммитить остальные отдельно. В результате каждый коммит будет сфокусирован на одном логическом изменении.
Вы перемещаете файлы в область подготовленных файлов (staging) с помощью git add, а из области подготовленных файлов в репозиторий — с помощью git commit.
Задание
НовичокВ папке находится неотслеживаемый файл app.txt. Инициализируйте репозиторий, затем выполните git status --short, чтобы подтвердить, что файл отображается как неотслеживаемый.
Шпаргалка
Git использует двухэтапный рабочий процесс для создания коммитов:
- Рабочий каталог – где вы редактируете файлы
- Область подготовленных файлов (Staging area) – изменения, отмеченные для следующего коммита
- Репозиторий – постоянная история после фиксации изменений
Подготовьте изменения с помощью git add, затем сохраните их в историю с помощью git commit. Это позволяет группировать связанные изменения в тематические коммиты, даже если было отредактировано несколько файлов.
Попробуйте сами
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Контроль версий
2Начало работы
Инициализация репозиторияПапка .gitНастройка данных пользователяGit StatusИтоги — первый репозиторий5Игнорирование файлов
Зачем игнорировать файлыШаблоны .gitignoreПроверка правил игнорированияИтоги: чистый репозиторий8Слияние
Что такое слияниеСлияние Fast-ForwardТрёхстороннее слияниеКонфликты слиянияРазрешение конфликтаИтоги — Мастер слияния11Проект: Feature Branch
Обзор проектаИнициализация Main3Отслеживание изменений
Область подготовкиGit AddGit CommitИзменение отслеживаемого файлаGit LogИтоги: первые коммиты6Проект: Сайт рецептов
Обзор проектаИнициализация и игнорирование