git add
git add: добавить файлы в область подготовки (staging area).
Команда git add переносит изменения из рабочего дерева (working tree) в область подготовки (staging area). Она сообщает Git, что обновления в выбранных файлах нужно включить в следующий коммит. При этом git add не трогает сам репозиторий, пока правки не будут закоммичены. Можно добавлять сразу несколько файлов или использовать паттерны, чтобы захватить файлы определённого типа. А ещё можно отправлять в область подготовки отдельные куски файла в интерактивном режиме.
Подготовка (staging) — это шаг перед созданием коммита. Он позволяет точечно выбрать и подготовить файлы, вместо того чтобы коммитить всё подряд, что изменилось с прошлого раза. Это отличный способ разбить правки на логичные части перед тем, как сохранить их в историю репозитория.
Команда git add особенно спасает, когда правок много и их хочется разбить на несколько коммитов. Добавляя в область подготовки только нужные файлы, можно чётко контролировать, как именно шаг за шагом будет записываться история проекта.
Например, если в одном файле появилась новая возможность, а в другом — обновились стили, можно подготовить их по очереди и сделать два независимых коммита. Если потом захочется отменить правки стилей, код новой возможности при этом не пострадает.
Примеры
Добавить конкретный файл в область подготовки Git:
git add README.mdДобавить все изменения в текущей директории (включая новые файлы и правки в существующих). Символ . указывает на текущую директорию (то есть «все изменения в текущей директории»):
git add .Добавить все файлы .txt в текущей директории:
git add *.txtВыбрать конкретные куски файла и отправить их в область подготовки в интерактивном режиме:
git add --patchИли короткий вариант:
git add -pУбрать из области подготовки файл, который был добавлен туда ранее:
git restore --staged README.md.gitignoregit checkoutgit configgit taggit worktree