-
Notifications
You must be signed in to change notification settings - Fork 102
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add pre commit hooks #362
Add pre commit hooks #362
Conversation
@sgmdlt Посмотри плиз |
Добрый день, подскажите, какую задачу вы решаете этим пр? |
Добрый день!
По итогу профит в том, что большинство typo- подобных ошибок, ошибок линтера будет исправляться на стадии коммита, многое поправится автоматически. |
@sgmdlt Добрый день! Какое резюме по данному ПР? |
Салют, дело в том, что в проекте уже стоит линтер как локально, так и в CI. Если вы хотите чтобы еще линтинг (и только линтинг, форматирование добавлять не нужно) был в прехуках, то запускайте в прехуке ту же самую команду, что запускает и локальный линтинг. Вот как это в другом проекте |
Добрый день!
Тогда получается этот issue закрывать надо без ПР? Тк задача стояла добавить .pre-commit и она не решается, нам он получается не нужен. |
Это неожиданное поведение. Когда мы запускаем команду линтинга, мы ожидаем, что она проверит код, без его модификации. Если нужно код менять, то лучше делать это явно. в CI делать модификацию кода - ну такое. Иногда линтер может чето даже и сломать (редко, но бывает), поэтому в CI делать модификации кода чаще всего не стоит. По поводу прехука. Задача тут в том стояла, что было бы хорошо добавить инструмент, который можно подключить для локальной разработки и он будет запускать хук для проверки линтинга. Есть ли такой инструмент сейчас? Сейчас команды линтинга можно только вручную и на CI запустить, если не ошибаюсь. |
в CI делать модификацию кода - ну такое- я согласен. Просто я бы не назвал это CI. Это просто локальная автопроверка перед коммитом, которую все равно надо аппрувить- выше описал. По поводу прехука. Задача тут в том стояла, что было бы хорошо добавить инструмент, который можно подключить для локальной разработки и он будет запускать хук для проверки линтинга. Есть ли такой инструмент сейчас? Сейчас команды линтинга можно только вручную и на CI запустить, если не ошибаюсь.- да есть на линтинг. В прехуке мы можем добавить разыне проверки. Линтинг добавлен. Доавил еще несколько, тк почитал это полезным тоже. Давайте тогда резюмируем, оставляем только прехук на линтинг? Остальное убираем? |
Обычно прехуки именно делают проверку кода, без модификации. МОжно сказать, что это наше соглашение на проектах - на прехуках не должны модифицироваться файлы, только проверяться =) Я бы да, оставил только прекоммит на линтинг. Тогда у нас будет логика такая же, как на других проектах - на коммит или пуш выполняется хук, который можно заигнорить через Просто даже с модификацией кода, без коммита можно получить непредсказуемое поведение, когда захочется переключиться на другую ветку или стянуть изменения, но гит это заблокирует тк есть изменения. |
modified description of work of pre-commit hooks in CONTRIBUTING.md
Спасибо за комментарии, стало понятнее теперь. Поправил, оставил запуск линтера через make команду, ту же, что локальный линтинг запускает. |
No description provided.