git客户端在clone、pull、commit、push代码的时候可以下勾子执行指定脚本。
将代码库clone到本地,.git/hooks目录下有多个demo文件,去掉后缀.sample,内部脚本就可以在git操作过程中执行,比如在clone或pull操作时自动下载其他库作为当前库的SubModule,或提交时检查备注信息等。
但.git内的文件无法提交,仅能本地设置使用,可在代码库中创建.githooks目录,将勾子脚本文件拷贝过来,提交到git仓库中,在项目组内共享。但需要设置勾子目录
git config core.hooksPath .githooks
例如在post-merge文件内设置clone或pull操作后,去从svn地址下载依赖文件

配置后git指令或tortoisegit工具都可生效。