Git diff --name-only: вывести список изменённых файлов
Чтобы получить имена файлов без строк diff, используйте git diff --name-only. Для staged-изменений добавьте --cached, а чтобы видеть добавления и удаления вместе с именами, выберите --name-status.
Рабочий пример
git diff --name-only
git diff --cached --name-only
git diff --name-status main...HEAD
git diff --name-only -zA, M и D в --name-status означают добавленный, изменённый и удалённый путь. Три точки сравнивают общий предок веток с HEAD, а -z выводит NUL-разделители для скриптов.
Частый вопрос
Почему git diff --name-only пустой?
Изменения могут быть уже staged. Проверьте отдельно git diff --cached --name-only и git status --short.