git hook执行顺序

Jas*_*son 11 git githooks

我看到 GIT 提供了一个预提交和一个提交消息挂钩...这很棒...但是我发现很烦人的是,当我进行提交时,我必须等待所有文件都被检查并且所有测试都被检查在我被告知“抱歉,我们的提交消息中没有 JIRA-XXX”之前运行。

从我在文档中读到的内容来看,您无法更改此顺序,并且预提交挂钩无法访问尚未创建的提交消息。

还有其他人对此感到恼火吗?如果是这样,其他人在做什么?

aym*_*met 4

当您说订单无法更改时,您是完全正确的。希望我认为,否则这将是一团糟。

关于您的问题,即使这在语义上不合适,我认为最好的解决方案是依靠commit-msg挂钩来执行所有检查(提交消息语法和您的 linting,按此顺序)。

另外,从版本 1.8.2开始,git 可以添加预推送钩子。您也可以在工作流程中考虑这一点。