@hh.ru/hh-frontend-hooks

hhru frontend hooks repo

Usage no npm install needed!

<script type="module">
  import hhRuHhFrontendHooks from 'https://cdn.skypack.dev/@hh.ru/hh-frontend-hooks';
</script>

README

Git hooks repo

Репозиторий содержащий скрипты для установки git хуков.

На данный момент используются хуки проверки JavaScript и python. csslint удален, как некорректный.

Зависимости

  1. pep8.

    sudo pip install pep8
    
  2. pyflakes.

    sudo pip install pyflakes
    

Установка хуков в xhh и bloko

Запустить в проекте:

npm install
```

## Установить хуки вручную

cd ~/hh.sites.main/.git/hooks
cp ~/hh-frontend-hooks/hooks/{pre-commit*} .
chmod +x {pre-commit*}

## Несколько хуков на одно действие

`pre-commit` запускает по очереди скрипты, начинающиеся с того же имени и дефиса.
Поскольку он используется через символическую ссылку `pre-commit`, при коммите будут запускаться все скрипты, начинающиеся с `pre-commit` (кроме `pre-commit.sample`):

pre-commit-eslint
pre-commit-pep8
pre-commit-pyflakes
…

Перед запуском каждого хука в консоль будет выведено сообщение:

Running hook: pre-commit-eslint

Если хук сообщает об ошибке (код возврата != 0), цепочка останавливается.

## См. также

[Git Hooks](http://git-scm.com/book/en/Customizing-Git-Git-Hooks).


## История изменений

### 2.0.3
- Добавлен хук для проверки соответсвия yarn.lock и package.json

### 2.0.2
- Изменено имя пакета, поправлено README

### 2.0.1
- Удаляем неиспользуемую зависимость

### 2.0.0
- `jscs` и `jshint` заменены на [`eslint`](https://github.com/hhru/eslint-config-hh-es5)

### 1.2.0
- Добавлен хук для проверки длины строки в XSL.

### 1.1.0
- Относительный путь до `jscs` и `jshint` заменён на путь возвращаемый командой `npm bin`
- Хуки теперь совместимы с npm@3.*

### 1.0.1

- Из инструкции убраны указания по установке модулей jscs и jshint
- Модули jscs и jshint добавлены в зависимости к самому модулю, в хуках прописаны пути для запуска модулей


### 1.0.0

- Первоначальный релиз