仅针对特定文件夹更改运行 Husky 挂钩

问题描述

当只更改特定文件夹中的文件时,是否可以只运行 git hooks??

我有后端和前端的 monorepo。我只想在前端的文件发生更改时运行 husky hook。否则它不应该被触发,也不应该运行 linting 测试等......这很烦后端开发人员

解决方法

结合 lint-staged,我设法仅对所需的文件夹更改运行 husky hooks 检查。

module.exports = {
  '*': (files) => {
    const isAppFolderChanges = files.some((fileName) =>
      fileName.includes('/app/'),)
    const scripts = [
      'npm run lint-fix','./node_modules/.bin/pretty-quick --staged','npm test',]

    return isAppFolderChanges ? scripts : []
  },}

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...