Что делает git add и почему нельзя сразу коммитить?
Каждый раз перед коммитом надо писать git add .. Не понимаю, зачем этот лишний шаг. Почему Git не может сразу сохранить все изменения сам?
2 ответа
git add нужен, чтобы ты сам выбрал, какие изменения попадут в коммит.
В Git есть промежуточная зона — её называют индекс или staging. Логика такая:
- Ты меняешь файлы.
git add файл— кладёшь нужные изменения «в коробку» (в индекс).git commit— фотографируешь именно то, что в коробке.
Зачем это надо? Иногда ты поменял 5 файлов, но в один коммит хочешь положить только 2 (они про одну задачу), а остальные — отдельным коммитом. git add даёт такой контроль.
Если тебе пока это не нужно и хочешь добавить всё сразу — пиши:
git add .
Точка означает «все изменённые файлы в текущей папке». Для начала этого хватит.
Можно думать так: git add — это «выделить файлы галочками», а git commit — «сохранить выделенное». Иногда хочешь сохранить не всё, поэтому шаги и разделили.