问题标签 [lint-staged]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
prettier - lint-staged 不添加 prettier 修改的文件
我正在运行 lint-staged (v11.0.0) 作为我通过 Husky (v4.3.8) 的预提交挂钩的一部分。我的 lint-staged 执行 eslint (v7.27.0) 和 Prettier (v2.3.0)。但是,在 Prettier 运行之后,“美化”文件不会添加到提交中。
Prettier 在 lint-staged 过程中修改的文件如何自动添加到提交中?
eslint - 如何配置 lint-staged 以运行 eslint 和更漂亮的脚本
我有这个设置:
问题是无论 glob 匹配什么文件,prettier 都会运行,prettier 也会在所有文件上双重运行并重写所有文件两次。
git - “测试”的 husky 预提交钩子未完成
嗨,我安装了husky
&以便为暂存文件提供&lint-stage
的预提交钩子。lint
tests
当我转到 时,预提交挂钩起作用,git commit -m 'something'
并触发了命令。
到目前为止,我在文件方面拥有的是:
.husky/pre-commit
:
.package.json
:
当 i git commit ..
,(2 个文件,1 个 *.test.ts * 和 1 个 *.ts)时,它会启动linter
& the test
,但测试永远不会完成,除非我打破它(ctrl+c)。
- * .test.ts文件,其中有错误。
只有当我打破它时,我才会在屏幕上看到错误:
我还注意到lint-staged:
,当我git commit..
:
最初我是这样的:
它变成了这样:
欢迎对我错过的配置提供任何帮助。
reactjs - 为什么我在赫斯基(反应)中收到此错误?
我英语说的不好。请再说一遍。
我想在使用 husky & lint-staged 提交之前应用“更漂亮”。
所以我安装了'husky@4'、'lint-staged'、'prettier'。
我的 package.json 是
但是,当我提交时,我收到以下错误:
我已经设置了环境变量并重新启动。
如果我在 cmd 中键入“节点”,节点运行良好。
但为什么会弹出这个错误?
git - 由于 linting 错误(husky + lint-staged)导致提交失败时,挂起的 git 更改会丢失
我有一个使用 git 和 Visual Studio Code 的 Angular 应用程序。我设置了 ESLint 并使用 huskylint-staged
在预提交挂钩中运行,因此无法提交带有 linting 错误的更改。
当我第一次设置它时,失败提交中的未决更改就会消失,我了解到它们正在被隐藏:https ://stackoverflow.com/a/60335168/11991371 。
我不明白为什么它会默认隐藏我的更改,而不是让我纠正掉毛错误并再次尝试提交。坦率地说,这似乎很奇怪。遇到它的每个开发人员都会感到恐慌。所以我添加了--no-stash
标志,所以它不会那样做。
/.husky/预提交:
但现在我偶然发现了另一个问题案例。脚步:
- 对文件进行更改并意外留下 linting 错误。
- 暂存此文件。
- 在同一个文件中进行另一个更改(但不要暂存它)。
- 尝试提交分阶段的更改。它将由于 linting 错误而失败,并且第二次更改将丢失。
如果您碰巧打开了文件,您可以通过 IDE 中的“撤消”恢复您的更改,但这是一个大问题。 如何防止由于拒绝提交而丢失工作,同时又不会自动隐藏工作?
reactjs - lint-staged prettier write 没有结束
我在 React (TypeScript) 项目中使用 Husky 和 lint-staged。我的文件如下所示:
package.json
pre-commit
lint-staged.config.js
问题是更漂亮的脚本yarn fix-format:staged
永远不会结束。即使我将它放在顶部,它也会继续运行。
如果我将 lint-stage 设置移动到package.json
如下所示,则yarn check-types
失败并出现错误:Cannot use JSX unless the '--jsx' flag is provided.
package.json
任何人都可以帮我吗?
git - 使用 lint-staged 来检查这个提交是否可以构建?
使用 husky 和 lint-staged 时,是否可以检查预提交中的暂存版本?
有点像这样?
如果我尝试这个,即使提交的内容应该构建,我也会收到构建错误,它说它找不到“页面”目录。这是因为它试图仅构建暂存文件吗?
也许我正在尝试做一些不可能的事情。我只是想防止在 CI 构建管道上检查失败的代码。
谢谢 :)
lerna - 如何在提交的文件上运行 Lerna 命令
问题
我正在使用 husky、lint staged 和 lerna 对最近使用这个提交的包中的文件运行一些测试
yarn run lerna run --concurrency 1 --stream prepush --since HEAD --exclude-dependents
当我在 pre-commit 挂钩中使用此命令时,它在暂存文件上完美运行。但我需要使用相同的命令对已提交的苍蝇运行测试。
我想运行一些与推送前最近更改的文件相关的测试
当前行为
当前的行为是,当我在提交的文件上运行上述命令时,我得到了这个 msg
lerna success run No packages found with the lifecycle script 'prepush'
。
所以我的问题是:有没有办法在提交的文件上或在推送之前运行 lerna 命令?任何帮助表示赞赏。