使用 husky 和 lint-staged 检查 Node.js 的代码一致性

在软件开发过程当中,代码风格检查(Code Linting)是保障代码规范和一致性的有效手段。过去,Lint 的工做通常在 Code Review 或者 CI 的时候进行,但这样会致使问题的反馈链,浪费没必要要的时间。所以,咱们须要利用 Git 的 Pre Commit 钩子,将 Lint 过程放到开发者提交代码以前。css

本文将会重点介绍如何使用 huskylint-staged 来检查 Node.js 项目的代码一致性。其中 husky 用于设置本地的 Git 钩子,lint-staged 会让钩子只检查本次提交所修改的文件。html

安装 husky 和 lint-staged

首先,咱们使用下面的命令把 husky 和 lint-staged 安装到 Node.js 项目的 devDependencies 中:node

$ npm install husky lint-staged --save-dev
复制代码

若是你使用的是 Yarn,请使用下面的命令git

$ yarn add husky --dev
复制代码

修改 package.json 配置

将下面的代码加入 package.json文件中:github

{
  "husky": {
    "hooks": {
      "pre-commit": "lint-staged"
    }
  },
  "lint-staged": {
    "src/**/*.ts": ["tslint --project . --format stylish"],
    "src/**/*.{css,scss}": ["stylelint --config src/stylelint.config.json"]
  }
}
复制代码

这样,当在终端输入 git commit 命令提交代码的时候,Lint 程序便会自动检查本次提交所修改的文件是否符合本项目的代码规范。若是代码不符合规范,便会拒绝提交代码。npm

使用 husky 后提交

若是想要跳过 Lint 程序,能够使用 git commit -no-verify 进行提交。json

查看原文: myanbin.github.io/post/lintin…bash

相关文章
相关标签/搜索