【发布时间】:2018-05-16 13:14:54
【问题描述】:
使用Husky,我使用预提交挂钩设置了我的package.json,以便在每次提交之前使用Prettier 格式化我的JavaScript 代码:
{
"name": "prettier-demo",
"scripts": {
"precommit": "prettier --write **/*.js && git add ."
},
"devDependencies": {
"husky": "^0.14.3",
"prettier": "^1.8.2"
}
}
这很好用,但有两个缺点:
如果我有一个包含数千个 JavaScript 文件的大型项目,我必须等待 Prettier 处理所有这些文件,即使只有少数发生了更改;这可能需要很长时间,并且每次提交完成后都会很快让我感到紧张
有时我只想暂存几个文件以进行提交,而将其他更改排除在提交之外;因为我在运行 Prettier 后做了一个
git add .,所以我所有的更改都将始终在提交中结束
如何在每次提交之前只在已暂存的文件上运行 Prettier,而忽略未暂存或未更改的文件?
【问题讨论】:
标签: javascript git code-formatting pre-commit-hook prettier