是否在git子模块更新上执行了特定的钩子?

时间:2019-05-23 04:15:29

标签: git git-submodules githooks

我想问一下是否有可能在git子模块更新上执行钩子;可能像更新后的钩子?谢谢! :)

我喜欢执行一个脚本(目前它只包含echo msg),该脚本在每次git子模块更新运行时执行。

我尝试了更新后挂钩,但似乎子模块更新不会触发此操作。非常感谢您的帮助。非常感谢你!

2 个答案:

答案 0 :(得分:1)

更新后,就像接收后的钩子一样,将是server-side hook
因此,预计在本地(客户端)工作

因此git submodule update没有特定的钩子,这意味着您需要在包装器中编写git命令本身的脚本,以检测submodule参数,并将该命令链接起来与你的回声。

git-submodule with git-hooks — A way to scalable repositories的“ Ashwini Kumar”中描述了另一种复杂的方法,其中pre-commit触发了git commit钩子(在git submodule update之后完成) ,它将查看所​​述commit引入的差异。
如果diff涉及子模块,则它将继续执行其他命令。

答案 1 :(得分:1)

创建别名:

private_ip_address

并始终使用别名更新子模块:

git config alias.sup !"git submodule update; my-post-sup-hook"