Используйте инструменты сборки Node, чтобы ограничить свои операции с git, и вам нечего будет любить.
Введение
Я видел, что мой друг написал сегодня«Спецификация Git Commit, которую вы можете игнорировать», я не могу не думать об информации об отправке, на которую я не могу смотреть прямо. Конечно, я не могу винить себя. Кто сказал мне, что я могу совершать по желанию? Некоторые связанные инструменты и спецификации был представлен в статье выше.Здесь я добавлю некоторые операции.Следующее содержание считается простым учебником для него.
2. ЭСЛинт
Поскольку мы хотим стандартизировать, конечно, мы должны начать с самой базовой спецификации кода JS.Здесь мы выбираем eslint в качестве инструмента обнаружения спецификации кода.
1. Установите ESLint
cnpm i -g eslint
2. Установите файл конфигурации
Создайте файл .eslintrc.js в корневом каталоге.В нем много конфигураций, и конфигурации для разных окружений не одинаковы.Вы можете просмотретьОфициальная документация сайта, здесь просто настраиваем обнаружение обычных JS-файлов:
module.exports = {
extends: 'eslint:recommended',
env: {
browser: true,
node: true,
commonjs: true,
es6: true,
mocha: true
},
root: true,
rules: {
'no-console': 'off'
}
}
3. Проверка качества кода и спецификаций
Мы можем создать файл app.js, ввести некоторый контент и выполнить проверку с помощью следующей команды:
eslint app.js
Если ваш код не соответствует требованиям, консоль подскажет, в чем проблема.
На самом деле с eslint знакомы все, инструменты скаффолдинга различных проектов интегрировали его функции через webpack, поэтому при выполнении npm run dev, если код не соответствует спецификации eslint, вы не сможете завершить dev-сборку.
Но иногда, если вас это не беспокоит, просто git add и сохраните его. Теперь я знаю, что это не очень хорошая привычка, поэтому мне нужно ее изменить.
3. Хаски и корпия
Да, вы не ошиблись, это Хаски. так какHuskyСогласно официальной документации,
Git hooks made easy
Сравните жизненный цикл этого словесного хука во Vue, и вы поймете, что происходит. Итак, далее нам нужно только передать эту библиотеку, и мы можем сделать некоторые неописуемые вещи, прежде чем git add (так что вы можете внимательно вспомнить имя, оно очень тонкое).
Недостаточно иметь это, нам также нужноlint-staged, его роль также четко описана в документации:
Run linters on git staged files
1. Установите зависимости
cnpm i -D husky@next lint-staged
2. Настройте package.json
"lint-staged": {
"*.js": [
"eslint"
]
},
"husky": {
"hooks": {
"pre-commit": "lint-staged"
}
}
Далее, вы больше не сможете выполнять операцию добавления git так небрежно.
В-четвертых, валидация-фиксация-msg
Для использования этой библиотеки были подробно представлены вышеупомянутые статьи, включая некоторые справочные статьи, предоставленные спецификацией фиксации Angular. Здесь нам тоже нужно настроить его на хаски:
"husky": {
"hooks": {
"pre-commit": "lint-staged",
"commit-msg": "validate-commit-msg"
}
}
На этом небольшой рабочий процесс отправки нормализации кода в основном завершен.
5. Создать журнал
Конечно, если вы видели какие-то проекты с открытым исходным кодом, то в их проектах есть файл CHNAGELOG.md, этот файл в основном используется для записи информации об итерациях обновления проекта. Здесь мы можем использовать обычный журнал изменений для создания файлов журнала:
1. Установите зависимости
cnpm i -D conventional-changelog
cnpm i -g conventional-changelog-cli
2. Настройте package.json
"scripts": {
"changelog": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0",
"addChangelog": "conventional-changelog -p angular -i CHANGELOG.md -s"
}
Затем вы можете создать полный журнал через журнал изменений npm run, при условии, что ваши коммиты соответствуют стандарту Angular Commit.
6. Пишите в конце
Вот лишь краткое введение в две ситуации обязательной верификации.На самом деле мы можем добавить и csslint в пре-коммит.Конечно, примеров должно быть больше.Друзья могут поделиться своим наболевшим опытом.
Друзья, которым понравилась эта статья, прошу обратить внимание на мой номер подпискилюблю набирать код, узнать больше.