我们有一个很好的 GIT 预提交钩子,以及一个很好的提交消息。预提交挂钩执行语法验证,提交消息执行一些其他业务逻辑。一切都运转良好。
但是,我想将编码标准验证添加到预提交挂钩中。事实上,它已经添加了。但是,我不想严格强制我们的开发人员符合编码标准,默认情况下我想验证代码是否符合标准,但如果他们想通过编码标准验证,我想让他们通过在提交期间添加参数来传递。
是否可以捕获/解释在预提交挂钩级别提交到 git 期间给出的任何命令行参数,以便跳过预提交挂钩中的编码标准验证(可选?)
或者是否只能在预提交消息挂钩中通过分析特定子字符串的提交消息?
请分享有关如何(以及在何处)使用 git 预提交挂钩(或其他 git 挂钩)创建命令行控制的条件代码的最佳实践。
执行此操作的一个简单方法是简单地使用环境变量:
STANDARDS=no git commit
然后在脚本中(Bash 中的示例,但您可以用您的钩子使用的任何语言读取环境变量):
if [ "$STANDARDS" != "no" ]; then
...check for code standards...
fi
Git 通常不会传递超出 中列出的信息man githooks
对于每个钩子,因此尝试使用“命令行选项”来完成它git commit --no-standards
或者一些这样的行不通。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)