无法删除/找到 git 挂钩

Can't remove / find git hook

曾几何时,我按照这些说明安装了一些 git 钩子:

Clone this directory, then run git config --global init.templatedir $template_dir. Afterward new repositories will use this directory for templates.

现在我想删除这些挂钩。我已经在我的 .gitconfig 中取消设置模板,我已经删除了 .git-templates 文件夹,但无论挂钩如何仍然 运行.

File ".git/hooks/pre-commits/security-scan", line 49, in check_code_diff code = code.decode() UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 113: ordinal not in range(128)

但我似乎无法在我的机器上任何地方找到这个文件!只有示例挂钩在我存储库的挂钩文件夹中

applypatch-msg.sample       pre-push.sample
commit-msg.sample           pre-rebase.sample
post-update.sample          prepare-commit-msg.sample
pre-applypatch.sample       update.sample
pre-commit.sample

从您收到的错误消息来看,钩子脚本的名称似乎是security-scan。你应该能够通过搜索整个文件系统找到这个文件:

find / -name security-scan 2>/dev/null

我将 stderr 静音以减少噪音。此外,我们知道您的用户可以读取该文件,如果不是,也不会导致问题。

您可以通过添加 -delete 标志来删除这些文件。 您可能也想删除整个目录, 为此你可以使用这个:

find / -name security-scan -exec sh -c 'rm -fr "$(dirname "{}")"' \; 2>/dev/null