27cm
@27cm
TODO: Написать статус

Как получить список отслеживаемых и проиндексированных файлов и директорий в Git, исключив поддиректории?

Доброго.

Проблема
Необходимо получить список имён всех отслеживаемых и проиндексированных файлов и директорий в текущей директории, исключая все поддиректории.

Например, для вот такой структуры:
/.git/...
/folder/subfolder/file.ext
/folder2/new.ext (новый проиндексированный файл)
/.gitignore
/file.ext
/ignoreme.ext (не отслеживаемый файл)
/new.ext (ещё один новый проиндексированный файл)


Нужно получить:
folder
folder2
.gitignore
file.ext
new.ext


Что уже пробовал
Очень близкий результат даёт команда git ls-tree --name-only HEAD
Но она не возвращает имена новых, проиндексированных файлов и директории с такими файлами.

Также смотрел в сторону git ls-files
Игрался с параметрами, но так и не удалось добиться требуемого результата.

Зачем вообще это нужно?
Пишу скрипт, генерирующий файл README.md для каждой поддиректории, в который будут включён список всех файлов и директорий данной директории с краткими пояснениями. Пояснения берутся из конфига или на основе содержимого директории или файла.

Заранее благодарен всем за любые идеи.
  • Вопрос задан
  • 4478 просмотров
Пригласить эксперта
Ответы на вопрос 1
vawsan
@vawsan
Frontend Developer
Скриптом временно внести все подпапки в .gitignore, трекнуть, а затем откатить файл .gitignore.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
28 апр. 2024, в 19:54
2000 руб./за проект
28 апр. 2024, в 19:54
5000 руб./за проект
28 апр. 2024, в 19:44
10000 руб./за проект