offline version v3
Запись на курсы по HTML, CSS, JavaScript, PHP, фреймворкам и CMS,
а также: помощь в поиске работы и заказов, стажировка на реальных проектах→
⊗gtPmBsCPp 15 of 66 menu

Подготовка файлов к коммиту в Git

Слежение за файлами это только пол дела. Мы также должны указать Git, в какой момент запомнить состояние файла для последующего коммита. Это также делается с помощью многофункциональной команды add. Сейчас мы обсудим подробнее это тонкое место.

Пусть мы создали файл index.html. Изначально он будет не отслеживаемый:

Untracked files: index.html

Сделаем его отслеживаемым:

git add index.html

Теперь он попадает в список для подготовленных к коммиту, как новый файл:

Changes to be committed: new file: index.html

Изменим теперь текст файла. В этом случае файл файл попадет в раздел не подготовленных к коммиту, но уже как модифицированный:

Changes not staged for commit: modified: index.html

Более того, этот файл будет сразу в двух разделах:

Changes to be committed: new file: index.html Changes not staged for commit: modified: index.html

Как так? Дело в том, что Git сохраняет (индексирует) именно текущее состояние файла. Под состоянием понимается текущий текст файла, а также создан он или удален. Если же файл изменен, то просто так его изменения не сохранятся (не проиндексируются) в Git. Для этого нужно снова выполнить команду add. Фактически эту команду следует рассматривать как добавление текущего состояния файла к новому коммиту.

Именно поэтому мы видим наш файл в нескольких списках - это разные версии файла.

Давайте заставим Git проиндексировать текущее состояние нашего файла index.html, в который мы внести изменения. Выполним для него команду add:

git add index.html

После этого текущая версия станет готова к коммиту и попадет в соответствующий раздел:

Changes to be committed: modified: index.html

И так нужно делать каждый раз. Когда вы вносите изменения в файл, вы должны проиндексировать их для следующего коммита с помощью команды add. Конечно же, если вы хотите забирать эти изменения в следующий коммит.

Создайте новый файл. Проиндексируйте ваш файл. Посмотрите статус.

Внесите изменение в ваш файл. Посмотрите статус. Проиндексируйте ваш файл. Посмотрите статус.

Снова внесите изменение в ваш файл. Посмотрите статус. Проиндексируйте ваш файл. Посмотрите статус.