使用 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

相關文章
相關標籤/搜索