Проверка сообщений коммитов
Демонстрация сгенерирована с помощью svg-term-cli
cat docs/assets/commitlint.json | svg-term --out docs/assets/commitlint.svg --frame --profile=Seti --height=20 --width=80
commitizen
npm
conventional-changelog
commitlint проверяет, соответствуют ли ваши сообщения коммитов стандартному формату коммитов.
В общем, шаблон выглядит примерно так:
type(scope?): subject #scope необязательно
Примеры из реальной жизни могут выглядеть так:
chore: run tests on travis ci
fix(server): send cors headers
feat(blog): add comment section
Общие типы согласно commitlint-config-conventional (основано на конвенции Angular) могут быть:
Эти типы можно модифицировать с помощью собственной конфигурации.
# Установите CLI commitlint и конфигурацию по умолчанию
npm install --save-dev @commitlint/{config-conventional,cli}
# Для Windows:
npm install --save-dev @commitlint/config-conventional @commitlint/cli
# Настройте commitlint для использования конфигурации по умолчанию
echo "module.exports = {extends: ['@commitlint/config-conventional']}" > commitlint.config.js
Чтобы проверять коммиты перед их созданием, вы можете использовать хук 'commit-msg' из Husky.
Установите в вашем проекте npm install husky --save-dev
или yarn add -D husky
.
После этого вы можете создать файл .huskyrc
или добавить в ваш package.json
следующий код:
{
"husky": {
"hooks": {
"commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
}
}
}
Подробные инструкции по настройке
npm install --save-dev @commitlint/cli
commitlint.config.js
, .commitlintrc.js
, .commitlintrc.json
, или .commitlintrc.yml
или поля commitlint
в package.json
Доступно несколько общих конфигураций для установки и использования с commitlint
:
⚠️ Если вы хотите опубликовать свою собственную общую конфигурацию, убедитесь, что её имя соответствует шаблону
commitlint-config-emoji-log
илиcommitlint-config-your-config-name
— тогда в полеextend
вам нужно будет указать толькоemoji-log
илиyour-config-name
.
commitlint
commitlint
считается стабильным и используется в различных проектах как инструмент разработки.
Мы считаем, что легкость внедрения и опыт разработчика — это области, где есть место и потребность для улучшений. Элементы плана развития должны улучшить commitlint
в этих аспектах.
@commitlint/travis-cli
(https://github.com/conventional-changelog/commitlint/releases/tag/v5.1.0)@commitlint/travis-cli
commitlint
commitlint init
@commitlint/prompt
для лучшей удобоваримости (может потребовать много работы)>= 8
>= 2.13.2
Авторство @marionebl. Все пакеты commitlint
распространяются под лицензией MIT.
commitlint
разрабатывается в монорепозитории.
git clone git@github.com:conventional-changelog/commitlint.git
cd commitlint
yarn
yarn run build # выполнение задач сборки
yarn start # запуск тестов, снова при изменении
Для получения более подробной информации о том, как внести свой вклад, ознакомьтесь с нашим руководством по вкладу.
yarn clean
yarn install
yarn run build
yarn test
yarn run publish
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )