Состояния файлов
Давайте более подробно разберемся с тем, в каких состояниях могут быть файлы с точки зрения Git. Каждый файл может находится только в одном из двух состояний:
- Отслеживаемым (tracked). Об этих файлах Git знает и отслеживает изменения в них. Отслеживаемые файлы в свою очередь могут находится в следующих состояниях:
- Неизмененным (unmodified). То есть с момента последнего коммита в файле не было никаких изменений
- Измененным (modified). То есть с последнего коммита в файле были произведены какие-то изменения.
- Подготовленным к коммиту (staged). Это значит, что вы внесли изменения в этот файл и затем проиндексировали их, и эти изменения будут добавлены в следующий коммит.
- Неотслеживаемым (untracked). О неотслеживаемых файлах Git не знает, поэтому изменения в них не будут добавлены в коммит. Это любые файлы в вашем рабочем каталоге, которые не входили в последний коммит и не подготовлены к текущему коммиту.
Наглядная визуализация состояний и переходов между ними (источник: git-scm.com/book):

Чтобы посмотреть статус текущих файлов, нам потребуется команда git status.
Команда
git statusВыводит информацию о статусе файлов, находящихся в репозитории.
До кументация здесь.
Предположим, вы добавили в свой проект новый файл, простой файл README.
echo 'My Project' > README
Наша папка будет выглядеть следующим образом:
bmstu/
└── README
Если этого файла раньше не было, и вы выполните git status, вы увидите свой неотслеживаемый файл вот так:
On branch main
No commits yet
Untracked files:
(use "git add <file>..." to include in what will be committed)
README
nothing added to commit but untracked files present (use "git add" to track)
Видно, что на данный момент у нас нет ни одного коммита.
Атрибуция
При подготовке статьи использован материал: