Как перечислить все отдельные расширения отслеживаемых файлов в репозитории git? Я хочу знать все расширения файлов, отслеживаемых git в заданном репо, для создания соответствующего файла .gitattributes. Какую команду я могу использовать для этого? Ответ 1 git ls-tree -r HEAD --name-only | perl -ne 'print $1 if m/\.([^.\/]+)$/' | sort -u Когда вы объявляете его как псевдоним, вам нужно выйти $1: alias gitFileExtensions="git ls-tree -r HEAD --name-only | perl -ne 'print \$1 if m/\.([^.\/]+)$/' | sort -u" Это лучше наивного find, потому что: исключает неиспользуемые (gitignored) файлы он исключает каталог .git, который содержит обычно сотни/тысячи файлов и, следовательно, замедляет поиск (вдохновленный Как я могу найти все отдельные расширения файлов в иерархии папок?)
Ответ 1 git ls-tree -r HEAD --name-only | perl -ne 'print $1 if m/\.([^.\/]+)$/' | sort -u Когда вы объявляете его как псевдоним, вам нужно выйти $1: alias gitFileExtensions="git ls-tree -r HEAD --name-only | perl -ne 'print \$1 if m/\.([^.\/]+)$/' | sort -u" Это лучше наивного find, потому что: исключает неиспользуемые (gitignored) файлы он исключает каталог .git, который содержит обычно сотни/тысячи файлов и, следовательно, замедляет поиск (вдохновленный Как я могу найти все отдельные расширения файлов в иерархии папок?)