我如何配置一个预提交钩子,它将强制yaml/yml文件具有yaml扩展名。
yaml
lol.yaml
未通过:
lol.yml
ulydmbyx1#
列出所有缓存文件,不包括已删除的文件。检查每个文件的扩展名。如果其中任何文件以.yml结尾,则挂接失败。在巴什的一个演示
.yml
#!/bin/bash git diff --cached --name-status --diff-filter=d | awk ' /\.yml$/ { print "ERROR: pre-commit failed" print $NF print "The extension \".yml\" is not allowed. Use \".yaml\" instead" exit 1 } '
这个演示只检查扩展名。如果需要的话,你也可以在检查扩展名之前先检查一个文件是否真的是YAML文件。YAML文件以三个破折号开头,所以找到真正的YAML文件并不复杂。
1条答案
按热度按时间ulydmbyx1#
列出所有缓存文件,不包括已删除的文件。检查每个文件的扩展名。如果其中任何文件以
.yml
结尾,则挂接失败。在巴什的一个演示
这个演示只检查扩展名。如果需要的话,你也可以在检查扩展名之前先检查一个文件是否真的是YAML文件。YAML文件以三个破折号开头,所以找到真正的YAML文件并不复杂。