我正在使用git pre-commit钩子来检查提交.预提交脚本基本上做了一件事:
exec git diff-index --check --cached HEAD --
Run Code Online (Sandbox Code Playgroud)
它也做了一些其他的事情,但它们与这个讨论无关.
问题是,我在存储库中有各种各样的文件,并不是所有文件都必须遵守" git diff-index --check" 强制执行的检查.
所以我的问题是:如何排除/忽略这些文件?也就是说,我确实在git中跟踪它们,但我想在预提交检查中忽略它们.
例如,某个补丁包含*.c,*.h,*ini和*.xyz文件.我希望" git diff-index --check"仅适用于.c和.h文件.
手册页说:
当存在<path>参数时,仅比较与这些模式匹配的路径.否则,将比较所有跟踪的文件.
换句话说,"path"参数实际上是glob样式的模式,而不仅仅是特定的路径.您只需添加'*.c' '*.h'到您的命令即可.
| 归档时间: |
|
| 查看次数: |
931 次 |
| 最近记录: |