【问题标题】:Why is lint-staged running on unstaged files with my configuration?为什么 lint-staged 使用我的配置在未暂存的文件上运行?
【发布时间】:2020-05-18 19:19:05
【问题描述】:

我在我的 package.json 文件中设置了 husky 和 ​​lint-staged 并且它运行,但在所有文件上运行,而我希望它只在暂存文件上运行。

"husky": {
  "hooks": {
    "pre-commit": "lint-staged"
  }
},
"lint-staged": {
  "./**/*.js": [
    "eslint . --fix --quiet"
  ]
},

【问题讨论】:

    标签: git-husky lint-staged


    【解决方案1】:

    删除“。”在你的 eslint 命令中应该可以解决这个问题。

    "husky": {
      "hooks": {
        "pre-commit": "lint-staged"
      }
    },
    "lint-staged": {
      "./**/*.js": [
        "eslint --fix --quiet"
      ]
    },
    

    命令 eslint . --fix --quiet 对当前目录中的所有文件运行 eslint

    因此,当为暂存文件触发预提交挂钩时,由于您的 eslint 命令正在当前目录中的所有文件上运行,它也会影响您的未暂存文件。


    每当 lint-staged 在文件上运行时,它都会自动将文件名传递给所有指定的命令。

    例如,如果正在处理暂存的 index.js 文件,

    eslint --fix --quiet
    

    变成了

    eslint --fix --quiet index.js
    

    【讨论】:

      猜你喜欢
      • 2023-03-03
      • 2020-01-06
      • 2019-11-05
      • 2018-10-07
      • 2019-08-14
      • 2021-05-24
      • 2019-07-22
      • 2019-09-12
      • 2021-10-09
      相关资源
      最近更新 更多