Git: репозиторий, рабочее дерево и индекс

Git хранит историю изменений в репозитории. Чтобы пользоваться им осознанно, нужно понять три области: рабочее дерево, индекс и история коммитов.

Краткий ответ

Git хранит историю изменений в репозитории. Чтобы пользоваться им осознанно, нужно понять три области: рабочее дерево, индекс и история коммитов.

Git хранит историю изменений в репозитории. Чтобы пользоваться им осознанно, нужно понять три области: рабочее дерево, индекс и история коммитов.

Рабочее дерево - это файлы проекта на диске. Индекс, или staging area, - промежуточная область, куда вы добавляете изменения перед коммитом. История - набор сохраненных коммитов.

Главная схема

1. Вы меняете файлы в рабочем дереве. 2. Командой git add выбираете изменения для коммита. 3. Командой git commit сохраняете выбранные изменения в историю.

Проверка состояния

git status
git status --short

git status показывает, какие файлы изменены, какие подготовлены к коммиту и что Git предлагает сделать дальше. Это команда, которую стоит запускать часто.

Почему нужен индекс

Индекс позволяет собрать коммит только из части изменений. Например, вы поправили README и одновременно начали эксперимент в коде. В коммит можно добавить только README, а эксперимент оставить незакоммиченным.

git add README.md
git commit -m "Обновить описание проекта"

Что такое хороший коммит

Хороший коммит отвечает на один логический шаг: добавить конфиг, исправить ошибку, обновить документацию, подключить тест. Если в один коммит попали unrelated-изменения, историю сложнее читать и откатывать.

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

Что важно запомнить

https://yadro-code.ru/lessons/without-university/command-line-git-basics/command-line-git-07