Проблема с несколькими ветвями - предварительная обработка Git Hooks с помощью Husky
Моя проблема очень проста:
- Я использую Хаски, чтобы иметь дело с мерзавцами
Я настроил препуш-хуки, которые запускают 2 сценария:
"prepush": "npm-run-all - тест параллельного линта"
Он работает правильно на одном нажатии
- Но когда я пытаюсь нажать 2 или более веток, это не обнаруживает сбой сценариев.
Для примера допустим, что я создал 2 ветки:
1) функция / филиал-1
2) особенность / ветка-2
- В филиале-1 содержится проблема с ворсом, в ветке-2 все чисто (тест не пройден / проблема с ворсом)
- Я проверяю к ветви-2 и выдвигаю обе ветви (используя SourceTree в моем случае).
Вызывается хриплый prePush scrit, но скрипт lint не завершается неудачей (Хейвен, если он терпит неудачу, когда я нажимаю только эту ветку)
Я использую Husky 0.14.3
1 ответ
Вы не можете запускать тесты в ветке, в которой вы не находитесь.
Если вы на feature/branch-2
и толкать feature/branch-1
Гитук будет нормально стрелять и бегать. Но текущее состояние вашего приложения в файловой системе feature/branch-2
так что испытания пройдут.
Вам нужно будет проверить ветку, которую вы хотите нажать, прежде чем нажать.
Альтернативой было бы запустить тесты на pre-commit
вместо этого вы всегда будете на правильной ветке.
Или сделайте несколько сценариев, которые будут проверять правильную ветку, запускать тесты, сдвигать и возвращать вас к той ветке, которой вы были раньше. Хотя возможно, возможно, немного перегружен.