husky、lint-staged、@commitlint/cli 作用
时间: 2024-06-02 20:08:30 浏览: 211
这些工具都是用于执行代码质量和规范性检查的工具。 Husky 是一个 Git hook 工具,可用于在 Git 事件发生时触发自定义脚本。通过使用 Husky,我们可以自动化代码规范检查,测试等。 Lint-staged 是一个工具,可以在 Git 工作流程中为文件创建自定义提交钩子。它可以在代码提交之前运行 linters 或其他类似的工具,以确保将代码格式化和检查到经过经过验证的标准。@commitlint/cli 是一个专门用于约束和规范commit message的工具。它提供了一组默认的规则,是否通过commitlint 的检查可以成为代码被提交到主干的关键因素。
相关问题
"devDependencies": { "@commitlint/cli": "^17.6.3", "@commitlint/config-conventional": "^17.6.3", "@rushstack/eslint-patch": "^1.2.0", "@vitejs/plugin-vue": "^4.0.0", "@vue/eslint-config-prettier": "^7.1.0", "eslint": "^8.34.0", "eslint-plugin-vue": "^9.9.0", "husky": "^8.0.0", "less": "^4.1.3", "lint-staged": "^13.2.2", "prettier": "^2.8.4", "unplugin-auto-import": "^0.15.3", "unplugin-icons": "^0.16.1", "unplugin-vue-components": "^0.24.1", "vite": "^4.1.4" } 解释一下所有包
这是一个前端项目的开发依赖列表,其中包含了以下这些包:
1. "@commitlint/cli": "^17.6.3" - 这是一个用于规范提交信息的工具。
2. "@commitlint/config-conventional": "^17.6.3" - 这是一个用于规范提交信息的配置文件,其规则基于常见的约定式提交规范。
3. "@rushstack/eslint-patch": "^1.2.0" - 这是一个用于在 RushJS 项目中禁用 ESLint 缓存的工具。
4. "@vitejs/plugin-vue": "^4.0.0" - 这是一个用于在 Vite 构建工具中支持 Vue 的插件。
5. "@vue/eslint-config-prettier": "^7.1.0" - 这是一个用于在 Vue 项目中集成 Prettier 的 ESLint 配置。
6. "eslint": "^8.34.0" - 这是一个用于代码规范检查的工具。
7. "eslint-plugin-vue": "^9.9.0" - 这是一个用于在 ESLint 中支持 Vue 的插件。
8. "husky": "^8.0.0" - 这是一个用于在 Git Hooks 中运行脚本的工具。
9. "less": "^4.1.3" - 这是一种 CSS 预处理器。
10. "lint-staged": "^13.2.2" - 这是一个用于在 Git Hooks 中对指定文件进行代码规范检查的工具。
11. "prettier": "^2.8.4" - 这是一个用于代码格式化的工具。
12. "unplugin-auto-import": "^0.15.3" - 这是一个用于自动导入模块的 Vite 插件。
13. "unplugin-icons": "^0.16.1" - 这是一个用于在 Vite 中按需引入图标的插件。
14. "unplugin-vue-components": "^0.24.1" - 这是一个用于在 Vite 中按需引入 Vue 组件的插件。
15. "vite": "^4.1.4" - 这是一个基于 ESModules 的前端构建工具。
如何用husky对vue3+Element-plus=typescript的项目完成环境配置
要使用 Husky 对 Vue3 + Element-plus + TypeScript 项目进行环境配置,可以按照以下步骤进行:
1. 首先,在项目根目录下安装 Husky 和 lint-staged:
```bash
npm install husky lint-staged --save-dev
```
2. 接着,在 package.json 文件中添加如下配置:
```json
{
"husky": {
"hooks": {
"pre-commit": "lint-staged"
}
},
"lint-staged": {
"src/**/*.{js,ts,vue}": [
"vue-cli-service lint",
"git add"
]
}
}
```
这个配置将在每次提交代码前执行 lint-staged,lint-staged 又会执行 `vue-cli-service lint` 命令对项目中的 .js、.ts 和 .vue 文件进行代码检查,如果检查通过则将文件添加到提交中。
3. 最后,在 package.json 文件中添加一个 lint 命令来执行代码检查:
```json
{
"scripts": {
"lint": "vue-cli-service lint"
}
}
```
现在,每次提交代码时,Husky 会自动调用 lint-staged 对代码进行检查,如果检查通过则将代码提交到代码库中。如果检查未通过,则提交将被阻止。
注意:在使用 Husky 进行环境配置时,需要注意操作系统的差异性。在 Windows 系统中,需要将 pre-commit 钩子改为 pre-commit.cmd 钩子。
阅读全文