首页 > 其他分享 >配置 husky+lint-staged

配置 husky+lint-staged

时间:2023-11-19 20:23:13浏览次数:27  
标签:-- lint staged install commit husky

官方文档

安装依赖

yarn add husky lint-staged -D

在package.json 中添加一条 preinstall 脚本

{
  "script":{
    "prepare": "husky install"
  }
}

prepare 为 package.json 中的“scripts”属性中的脚本
当执行 install 的时候 它会在 prepublish 之后、prepublishOnly之前执行
官方文档

手动执行一次 yarn run prepare 就会得到一个 .husky 目录

为git仓库添加钩子 pre-commit 执行

husky 支持所有git 所有钩子 https://git-scm.com/docs/githooks

npx husky add .husky/pre-commit "npx --no-install lint-staged"

.husky目录下生成一个pre-commit的脚本

#!/bin/sh 
. "$(dirname "$0")/_/husky.sh"

npx --no-install lint-staged

配置 lint-staged , 在 package.json 中添加下面的配置

{
  "lint-staged": {
    "*.{js,vue,ts,jsx,tsx}": [
      xxx
      # "prettier --write",
      # "eslint --fix"
    ],
    "*.{html,css,less,scss,md}": [
      xxx
      # "prettier --write"
    ]
  }
}

这样提交代码之后,commit 的时候就回去检查放在暂存区的文件是否符合规范等等

标签:--,lint,staged,install,commit,husky
From: https://www.cnblogs.com/0x1cc4/p/17842550.html

相关文章

  • ESLint 的使用
    ESLint是一个语法规则和代码风格的检查工具,可以用来保证写出语法正确、风格统一的代码。首先,安装ESLint。$npmi-geslint然后,安装Airbnb语法规则,以及import、a11y、react插件。$npmi-geslint-config-airbnb$npmi-geslint-plugin-importeslint-plugin-jsx-a11ye......
  • vscode ESLint 配置
           vscode下载https://code.visualstudio.com/ 插件官网https://marketplace.visualstudio.com/VSCode     vscode的setting.json文件配置ESlint{"editor.formatOnSave":true,"editor.codeActionsOnSave":{"sou......
  • VSCode ESLint规则警告屏蔽方法
    举例:要屏蔽“Missingtrailingcomma”或“comma-dangle”警告,你可以使用ESLint的配置选项来设置规则。下面是一些方法,你可以根据自己的需求选择其中一种(这里只是举例,其他警告处理方法相同)方法1:在代码中添加注释来禁用规则在你希望屏蔽警告的代码行的上方添加如下注释://esli......
  • VSCode ESLint规则警告屏蔽方法
    举例:要屏蔽“Missingtrailingcomma”或“comma-dangle”警告,你可以使用ESLint的配置选项来设置规则。下面是一些方法,你可以根据自己的需求选择其中一种(这里只是举例,其他警告处理方法相同)方法1:在代码中添加注释来禁用规则在你希望屏蔽警告的代码行的上方添加如下注释://eslint-d......
  • husky——The '.husky/pre-commit' hook was ignored because it's not set as execut
    前言系统:machint:The'.husky/pre-commit'hookwasignoredbecauseit'snotsetasexecutable.hint:Youcandisablethiswarningwith`gitconfigadvice.ignoredHookfalse`.hint:The'.husky/prepare-commit-msg'hookwasignoredbec......
  • Slint 中的元素定位 (Positioning) 和布局 (Layout)
    基本逻辑Slint当中进行元素定位的基本逻辑是这样的:所有的可见元素都需要放置在窗口(window)中,每个元素都有x和y属性,这两个属性表示当前元素相对父元素的位置偏移。Slint计算某个元素在整个窗口中的位置时,会按照层级关系,一级一级将这个x和y的值进行累加,最终得到元素......
  • Slint 的两个核心 macro
    slint::include_modules!要使用这个库,首先需要在Cargo.toml中完成:[package]部分增加build="build.rs"[build-dependencies]部分增加slint-build="1.1.1"[1]随后,应该在与Cargo.toml同级的目录创建build.rs,其内容为(示例):fnmain(){slint_build::compile("ui/appw......
  • 使用脚本整合指定文件/文件夹,执行定制化 ESLint 命令
    背景最近面对一个庞大的项目,但是只需要修改某个模块,每次都手搓命令太麻烦了,于是就想着能不能写个脚本来辅助处理这些事情。解决方案定制化一键ESLint,执行文件下载地址:https://github.com/mazeyqian/go-gin-gee/releases/tag/v1.4.0基础使用以下案例以macOS为例,其他系统......
  • eslint$prettier 记录
    module.exports={//eslint配置eslintJSON:{root:true,//当前配置为根配置,将不再从上级文件夹查找配置parserOptions:{parser:'babel-eslint',//采用babel-eslint作为语法解析器sourceType:'module',//指定来源的类型,有两种script......
  • eslint提示 xxx should be listed in the project's dependencies
    有时候手动安装了一个npm包A,npm包A里面包含了npm包B,这时候如果importxxxfrom'npm包B';eslint会报错,提示npm包B不在package.json里面 解决方法:在eslintrc.js增加配置module.exports={rules:{'import/no-extraneous-dependencies':[0,......