【发布时间】:2023-04-08 00:16:02
【问题描述】:
我在预提交文件中设置了一个 git 挂钩,以便在任何提交之前运行 git pull。现在我已经删除了该文件并多次重新启动计算机,但在我提交之前该挂钩仍在运行。
我怎样才能完全删除或禁用它?
【问题讨论】:
我在预提交文件中设置了一个 git 挂钩,以便在任何提交之前运行 git pull。现在我已经删除了该文件并多次重新启动计算机,但在我提交之前该挂钩仍在运行。
我怎样才能完全删除或禁用它?
【问题讨论】:
我知道是什么原因造成的:
我在 git 核心目录中创建了我的 pre-commit 挂钩,但 git 在项目的 .git/hooks/ 目录中创建了一个预提交挂钩。我刚刚删除了它。
【讨论】:
.git/hooks 在我一次又一次地删除它之后仍然出现,有什么建议吗?
rm -rf .git/hooks。
根据文档,git hooks 应该驻留在$GIT_DIR/hooks/ - 验证这个目录不包含pre-commit hook 文件
如果问题仍然存在,您可以使用 --no-verify 标记您的 git commit(这应该绕过预提交挂钩)
信息可以在以下位置找到:
【讨论】:
$GIT_DIR/hooks/ 中基于pre-commit.sample 创建了pre-commit 钩子,然后我将其删除。我什至使用locate pre-commit 搜索了钩子,但什么都没有,但它还在运行。
--no-verify 只是部分有用。如果您想做git checkout 或想做git rebase -i,而这些提交将不被允许,那么您无能为力。