运行 Husky 钩子仅用于特定文件夹更改

Run Husky hooks only for specific folder changes

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

我有后端和前端的 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 : []
  },
}