git服务器端的hooks有三个
pre-receive: 推送接受前
update: 推送更新中
post-receive: 推送接受后
我想在post-receive中执行一个脚本,需要知道客户端推送的时候推送的分支名。但是查阅不少资料
都没有提到hooks脚本如何获取客户端推送信息的方法。
比如git客户端a向git服务器b推送了分支hotfix1.2.3的一些更新,我想在git服务器b的hooks里根据这次推送行为的分支名,也就是hotfix1.2.3,执行某个脚本。如何做到呢?
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
根据Server-side Hooks这个链接的内容,可以知道post-receive和pre-receive一样在执行前会得到3个参数:
<old-value> <new-value> <ref-name>所以既然知道了
ref-name和相应的hash值,就可以根据git相应的命令得到对应的信息.如git log refs/heads/master.