Как отобразить результат git ls-файла в древовидном формате?

Как отобразить результат git ls-файла в древовидном формате?

Допустим, у меня есть репозиторий git, вывод дерева которого выглядит следующим образом:

.                                                                                                                                                                                  
├── .gitignore                                                                   
├── untracked-file                                                                                                  
├── rep1                                                                                                                                                                           
│   └── tracked-file1                                                                                                                                                                      
├── rep2                                                                                                                                                                           
│   └── repb                                                                                                                                                                       
│       └── tracked-file2                                                                                                                                                                  
└── rep3                                                                                                                                                                           
    └── ignored-file  

И .gitignoreс rep3/ignored-file.

git ls-filesвывод будет:

rep1/tracked-file1
rep2/repb/tracked-file2

Как я могу получить:

.
├── .gitignore
├── rep1
│   └── file1
└── rep2
    └── repb
        └── file2

Вместо ?

Я думаю, это хорошее начало:

tree -P <(git ls-files | tr '\n' '|')

Так как -Pозначает только список, следующий за шаблоном, но я не знаю, как добавить в него скобки.

решение1

Звучит какгитриутилита (с/о создатель)jpwilliams) может подойти. (Я признаю, что для этого, однако, потребуется использовать другой сторонний инструмент.)

Аналогично, этодругой ответуказывает на использование другого инструмента:дерево-расширенный(с/о создателя)рулиотано).

Связанный контент