是否有 git 挂钩在检测到修改后的文件后立即运行?

Is there a git hook that runs immediately after detecting a modified file?

假设在 git pull-ing-or-git clone 之后-ing,Juan 编辑了一个名为 hello-world.txt.

的文件

是否有 git 挂钩在修改所述文件后立即运行?

我认为这是不可能的,因为没有文件更新的钩子。

这是可用挂钩的完整列表。

applypatch-msg
pre-applypatch
post-applypatch
pre-commit
prepare-commit-msg
commit-msg
post-commit
pre-rebase
post-checkout
post-merge
pre-receive
update
post-receive
post-update
pre-auto-gc
post-rewrite
pre-push

https://git-scm.com/book/en/v2/Customizing-Git-Git-Hooks

希望对您有所帮助!

Git 没有挂钩,但是您可以使用许多其他工具来监视文件的更改,然后 运行 命令。不过,他们确实要求您在进行修改之前启动该工具。

How to execute a command whenever a file changes? 的答案中列出了一些工具。这里有两个例子:

运行 make 自动与 entr:

echo hello-world.txt | entr make

运行 make 自动与 watchexec:

watchexec --exts txt make

如果您不想自己启动监视工具,可以尝试在 Git 挂钩中启动它,例如 post-receive.