Как стать автором
Обновить

Выкиньте свой husky

Время на прочтение1 мин
Количество просмотров22K
44 миллиона скачиваний в месяц
44 миллиона скачиваний в месяц

В git давно есть нативные хуки, на которые можно повесить произвольные скрипты (например, для линтинга). Они изначально уже присутствуют в любом репозитории в виде исполняемых файлов, можно посмотреть на них, если зайти в .git/hooks

это все доступные хуки, они сразу начнут работать если убрать постфикс .sample
это все доступные хуки, они сразу начнут работать если убрать постфикс .sample

Давайте настроим свой pre-commit хук, но будем хранить его в репозитории, чтобы он шарился. Заведем директорию, например .git-hooks, и пусть она будет в корне репозитория. Добавляем в нее файлик с именем pre-commit, делаем ему chmod +x, пишем в него все что нужно сделать:

 #!/bin/sh
touch PreCommitHookRan

Теперь, чтобы у всех контрибьюторов git знал где хранятся файлы-хуки, делаем такой npm-скрипт:

...
"prepare": "git config core.hooksPath .git-hooks || echo 'Not in a git repo'",
...

Это всё. Буквально. Готово.

Вы спросите, и что же особенного тогда делает husky?

?
?
?
?

Ни-че-го.

Теги:
Хабы:
Всего голосов 33: ↑29 и ↓4+32
Комментарии24

Публикации

Истории

Работа

Ближайшие события

19 марта – 28 апреля
Экспедиция «Рэйдикс»
Нижний НовгородЕкатеринбургНовосибирскВладивостокИжевскКазаньТюменьУфаИркутскЧелябинскСамараХабаровскКрасноярскОмск
22 апреля
VK Видео Meetup 2025
МоскваОнлайн
23 апреля
Meetup DevOps 43Tech
Санкт-ПетербургОнлайн
24 апреля
VK Go Meetup 2025
Санкт-ПетербургОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань
14 мая
LinkMeetup
Москва
20 – 22 июня
Летняя айти-тусовка Summer Merge
Ульяновская область