我在我的服务器上有一个 post-update 钩子,使得当我更新代码时可以运行一些脚本。
git push
它对实时网络目录进行了一次pull操作。然而,虽然push操作总是成功的,但post-update钩子有时会失败。
这个钩子非常简单:
#!/bin/sh
#
# An example hook script to prepare a packed repository for use over
# dumb transports.
#
# To enable this hook, rename this file to "post-update".
cd /var/www
env -i git pull
我在从各种地方推送更新,但有时我必须作为root登录到服务器并手动执行。env -i git pull
虽然我只需要做20%的时间,但为什么它会随机失败?另外,由于它可能作为一个无法写入文件系统的人运行,我该如何记录错误消息呢?
cd ... git pull
之前)用户是否具有足够的权限来运行脚本的其余部分,如果没有,则打印错误并干净地退出。 - Cascabel