假设在 git pull - ing -或- git clone - ing 之后,Juan编辑了一个名为hello-world.txt
的文件。
是否有一个git钩子在修改所述文件后立即运行?
答案 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
)中启动它。