git更新後掛鉤有一個奇怪的問題。我創建庫我的服務器(/var/www/vhosts/git/master.git
)上,並在這個倉庫中添加一個post-update掛鉤用下面的代碼:使用Git部署站點:更新後的掛鉤首次運行,然後再也不會再運行
#!/bin/sh
echo $1
echo "*UPDATE*"
case " $1 " in
*'refs/heads/master'*)
GIT_WORK_TREE=/var/www/vhosts/website.com/sandbox.website.com git checkout -f
echo
echo "Master was updated!"
echo
;;
esac
case " $1 " in
*'refs/heads/sandbox'*)
GIT_WORK_TREE=/var/www/vhosts/website.com/sandbox.website.com git checkout -f
echo
echo "Sandbox was updated!"
echo
;;
esac
我確信這個文件是可執行的。然後,我創建了用我的計算機上的本地存儲庫:
$ mkdir website && cd website
$ git init
$ echo 'Testing.' > index.html
$ git add index.html
$ git commit -q -m "Initial commit"
$ git remote add web ssh://[email protected]/var/www/vhosts/website.com/git/master.git
$ git push web +master:refs/heads/master
無論出於何種原因,第一個推動工作只是精細/var/www/vhosts/website.com/sandbox.website.com
獲取與索引文件,但隨後沒有下面的推動工作更新。我從post-update
掛鉤得到迴應,表示「Master已更新!」但目錄實際上並未更新。
對此提出建議?