@Glebmikheev привет, пожалуй адресно обращусь, мне кажется ты должен знать и возможно ответ будет не сложным, а кому-то другому ещё и полезным...
Задача: втащить пре-коммит хуки в проект. Для сего решения был выбран lefthook, ничего сложного казалось бы.
Всего лишь выполнение команды - npx prettier --write {staged_files} (где {staged_files} превращается в длинную строку с путями к файлам.
Но выяснилось, что время от времени влетает дикое количество файлов, а эмпирический предел около 100 штук. Далее ошибка превышения длинны строки команды.
Возможные варианты решения:
1. Использовать не {staged_files}, а что-то вроде ./project/src/app/**/*.ts
Хорошо конечно, но не очень, т.к. преттиеру придётся каждый раз бегать по тысяче форматированных файлов и проверять
2. Написать кастомный скрипт для lefthook, который бы получал список файлов, разбивал и параллельно бы их запускал.
Я так понимаю, что lefthook собственно без разницы что запускать перед коммитом, так что пока видятся два варианта:
1. Написать на родном для lefthook языке Go скрипт - сложно
2. Написать скрипт для gulp и внутри него разбивать и параллелить.
Пошёл я по второму варианту, но оказалось, что это тоже не очень просто, там ты натыкаешься на нодовские потоки данных и в общем ситуация один хрен отправляет тебя гуглить, долго читать и разбираться.
Посоветуй пожалуйста чего-нибудь :DD