我刚刚开始研究Git钩子,但我似乎无法让它们运行.
我设置了一个本地存储库,所以我的项目文件夹中现在有一个'.git'目录.我已将".cmd"文件添加到名为"pre-commit.cmd"的C:/path/to/my/project/.git/hooks目录中.这是这个文件的内容:
echo "HOOK RUNNING" echo. 2>C:/path/to/my/project/.git/hooks/EmptyFile.txt
这应该回显文本"HOOK RUNNING"并在该目录中创建一个空文本文件.但是,如果我通过我的IDE(NetBeans)提交更改或使用Git Bash提交,它们似乎都没有运行我的预提交挂钩,因为没有创建文件.
我的理解是,你需要做的就是使用钩子的名称来添加一个可执行文件(正如我所做的那样).难道我做错了什么?
注意:这是在Windows 7 PC上.
您可能没有运行该pre-commit
文件的权限
在您的终端中运行:
chmod +x .git/hooks/pre-commit
感谢@vaughan提出这个想法
如何命名你的钩子pre-commit
(没有任何扩展名)?
编辑:并添加#!/bin/sh
第一行或 #!/bin/bash
(在评论中建议)