我希望能够在 post-receive 挂钩上执行 php 挂钩,将文件从 git 存储库复制到同一服务器上的 web 文件夹,并且只有在主分支上推送文件时才运行,忽略其他分支。以下是我到目前为止所得到的。
!/usr/bin/php
<?php
exec("git archive master | tar -x -C /var/www/", $output);
?>
基本上,我不知道如何使用 php 访问 git 参数。
不要忘记接收后挂钩不接受争论 https://stackoverflow.com/a/3762546/6309:它读取标准输入上的数据。
“post-receive”脚本在 receive-pack 接受包并且存储库已更新后运行。它通过 stdin 以以下形式传递参数:
<oldrev> <newrev> <refname>
所以你需要阅读上述论点提取分支 https://stackoverflow.com/a/4807486/6309(该示例是在 bash 中,但您可以对其进行修改)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)