我有一个用于更新或开发服务器的post-receive钩子。我只是设置它。它有效,但它超级慢。当我推送到服务器时,拉动完成需要大约1-2分钟,我不知道为什么需要这么长时间。当我进行手动拉动时,只需不到5秒钟。
为什么用钩子需要更长的时间?
这是钩子的代码:
#!/bin/sh
cd /home/www
git pull
答案 0 :(得分:0)
问题是您的cd
更改了目录,但git命令正在您要推送的存储库上运行。
这是由于环境变量GIT_DIR
迫使Git使用指定的目录。
该变量由Git在调用Hook之前设置。这是一个正常工作的简单钩子:
#!/bin/sh
export GIT_DIR=/home/www
git pull