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

时间:2018-07-24 18:58:58

标签: git githooks git-status

假设在 git pull - ing -或- git clone - ing 之后,Juan编辑了一个名为hello-world.txt的文件。

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

2 个答案:

答案 0 :(得分:4)

我认为这是不可能的,因为没有挂钩来进行文件更新。

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

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

希望有帮助!

答案 1 :(得分:1)

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

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

通过entr自动运行make

echo hello-world.txt | entr make

通过watchexec自动运行make

watchexec --exts txt make

如果您不想自己启动观看工具,则可以尝试在Git钩子(例如post-receive)中启动它。