pre-commit run yapf --all-files не находит все файлы?

Запуск: RH7, Python 3.8.3, предварительная фиксация 2.8.2

Я скачиваю репо с гитхаба. Я вношу плохие изменения в существующий файл, например, не хватает пустых строк перед оператором класса. я бегу

предварительная фиксация запуска yapf --all-files

и я получаю Failed, как и ожидалось.

Однако, если я создам новый файл с той же ошибкой, ошибок не будет! Как будто новый файл не видит.

Пожалуйста, порекомендуйте.


person user2133121    schedule 10.11.2020    source источник
comment
вы можете показать свой файл .pre-commit-config.yaml? как зовут новый файл, который вы создали? или, по крайней мере, в чем его продолжение?   -  person ignoring_gravity    schedule 10.11.2020


Ответы (1)


pre-commit работает только с файлами, зарегистрированными в репозитории.

это делает так, что вам обычно не нужны правила исключения, которые требуются для многих других инструментов (для исключения virtualenvs, .tox, .git, других нежелательных файлов и т. д.)

он также позволяет выполнять перед фиксацией умные вещи при совершении коммитов, например отправлять только измененные файлы в базовые инструменты.

попробуйте git add thatfile.py, а затем запустите pre-commit run yapf (и / или --all-files)


отказ от ответственности: я являюсь автором предварительной фиксации

person Anthony Sottile    schedule 10.11.2020
comment
Чтобы еще больше развлечься, я использую eclipse вместе с несколькими инструментами командной строки. Когда новый файл не загружен в eclipse, предварительная фиксация его не находит. Но когда он ставится в режиме затмения, он обнаруживается с помощью предварительной фиксации. Таким образом, в отличие от ранее зафиксированных (старых) файлов, в которых ожидаются новые изменения, кажется, что для новых файлов git add не выполняется до тех пор, пока файл не будет перемещен из неустановленного в постановочный. Спасибо! - person user2133121; 10.11.2020