Zan*_*aes 7 pre-commit pre-commit-hook prettier pre-commit.com
我开始使用 Prettier + eslint 使用pretty-quick
& husky
(选项 2)。它的行为符合预期,即在提交(或修改)期间重新格式化代码并包含提交中的更改。
我的 monorepo 需要(几个)更多的预提交钩子,所以我最终迁移到pre-commit.com(选项 3)。现在,当我提交或修改时,Prettier 会修改文件并返回Failed
状态。这造成了一个相当烦人的工作流程,我被迫添加文件并尝试再次提交更改。
有什么方法可以将更改重新暂存为提交的一部分吗?
Ant*_*ile 14
预提交故意不触及暂存区域。默默地改变正在发生的事情是危险的。该工具总是让您有机会在提交之前验证挂钩的作用
您可以在问题跟踪器中阅读更多相关信息:
如果您想立即启动,我的建议是git add -u && !!
之后立即运行 - 这将暂存更改的文件并重新运行您刚刚运行的命令
如果您想冒险进入不受支持的领域,您可以将其作为命令的一部分运行(如其中一个问题所示)——但这巧妙地破坏了该工具所具有的许多保证
- id: yapf
entry: bash -c 'yapf "$@"; git add -u' --
Run Code Online (Sandbox Code Playgroud)
免责声明:我是预提交的作者
小智 5
我确信我的哥哥,预提交的创建者会确认这一点,但这是预提交的预期行为。它应该会失败,因为它直接修改您的文件。实际上,我自己使用 Prettier 来使用这个精确的设置,虽然这很烦人,但这只是您需要更改的事情之一。我喜欢创建一个名为“format”的 git commit -m 或其他东西,然后提交实际的更改。
编辑:在我回答之前他就狙击了我,他的回答更加深入
归档时间: |
|
查看次数: |
2607 次 |
最近记录: |