我有以下根 package.json:
{
"name": "project",
"private": true,
"workspaces": [
"packages/*"
],
"scripts": {
"build": "lerna run build",
"dev": "lerna run start --stream --parallel",
"format": "yarn prettier --write",
"prettier": "prettier --ignore-path .gitignore \"**/*.+(ts|tsx|json)\"",
"test": "lerna run test --"
},
"husky": {
"hooks": {
"pre-commit": "yarn format && yarn test"
}
},
"devDependencies": {
"husky": "^4.2.5",
"lerna": "^3.22.1",
"prettier": "^2.0.5"
}
}
问题是使用此设置,当我仍在处理文件时我无法提交,要解决此问题,我可以使用 lint-staged 模块,我的问题是,如何设置它以便我目前拥有的命令仍然运行但仅在暂存文件上运行,而不在每个项目中安装命令的所有依赖项?测试命令也可能是一个问题,因为它tsc --noEmit
在每个项目中运行,我可以强制它只检查暂存文件吗?