git推送導致500服務器錯誤的問題。根據服務器錯誤顯示爲文件權限問題。每次我從本地機器執行git push時,文件的所有權都會發生更改。Git推送更改文件所有權導致500服務器錯誤
爲了把事情再次合作,我一定要進入的public_html文件夾和chown potter.potter * -R
可能有人幫助我在這裏?我已經展示了下面我如何設定的事情了......
我已成立了一個名爲potter.git我的網站的開發服務器上的/ home /用戶名之內/庫gitrepos
ssh [email protected]
git config --global user.email "[email protected]"
git config --global user.name "harry"
內/家用/波特/ gitrepos
mkdir potter.git
cd potter.git
git init --bare
設置掛鉤,允許部署
cd hooks
pico post-receive
確認E d以下成後收到鉤,以便部署
#!/bin/bash
#
docroot="/home/potter/public_html"
while read oldrev newrev ref
do
branch=`echo $ref | cut -d/ -f3`
if [ "master" == "$branch" ]; then
git --work-tree=$docroot checkout -f $branch
fi
done
發後接收可執行
chmod 755 post-receive
集.bash矚目的工作目錄
# GIT
export GIT_DIR=/home/potter/potter.git
export GIT_WORK_TREE=~/public_html
現在我的本地機器上,我建立遠程連接如下:
git remote add website ssh://[email protected]/home/potter/potter.git
和推動,我這樣做:
git push website master
感謝您的意見。我創建了一個新用戶'git',並將gitrepos文件夾的名稱改爲'git'而不是root。現在...當我使用'git @ potter .....'進行混帳推送時,我不會再有500個服務器錯誤嗎? – Gravy
當您按照我的第三條建議進行操作時,由於權限不正確,您不應該再有內部服務器錯誤(500)。 – Arjan