2012-08-22 96 views
6

我使用的Amazon EC2託管其通過git的部署到服務器的網站。我以前使用的同一種EC2 Ubuntu Linux操作系統的服務器實例本教程,它已經完美地工作。然而,當我試着推到服務器,我收到以下錯誤跟蹤:的Git無法創建文件權限被拒絕

教程:http://toroid.org/ams/git-website-howto

跟蹤:

$ git push origin master 

Counting objects: 5, done. 
Writing objects: 100% (3/3), 250 bytes, done. 
Total 3 (delta 0), reused 0 (delta 0) 
remote: error: unable to create file index.html (Permission denied) 
To ssh://[email protected]/var/www/website.git 
    8068aac..04eae11 master -> master 

我只有在倉庫裏的一個文件的那一刻,這是index.html

的錯誤跟蹤顯示,權限被拒絕創建的文件。請你能告訴我哪裏出錯了嗎?

+0

你用什麼教程? –

+0

對不起,更新OP。 –

回答

3

你可能沒有做教程的這一部分:

首先,工作樹(以上/var/www/www.example.org)必須是誰運行鉤用戶可寫(或者用戶需要使用sudo訪問來運行git checkout -f或類似的東西)。

+0

必須以root身份登錄。 –

+0

什麼有關Windows的Git?雖然我是一名管理員和控制檯,但我仍然面臨着此權限被拒絕的錯誤,並以管理員身份運行。它就像一場噩夢.... –

1

來通知你,我有這個錯誤,因爲我做了一個鉤子在一個單獨的網站的根目錄更新文件。例如:

/var/www/project.git # (where we push updates) 
/var/www/project.com # (where the website exists) 

我忘了將group權限添加到project.com目錄。這使得它所有的工作,index.html的出現在/var/www/project.com目錄一次,我做下一個提交/推!

的完整代碼,使其工作假設你添加用戶到「開發者」組:

sudo chmod -R g+ws /var/www/project_name.git 
sudo chgrp -R developers /var/www/project_name.git 
sudo chmod -R g+ws /var/www/project_name 
sudo chgrp -R developers /var/www/project_name 

而且git的設置爲共享存儲庫:

git config core.sharedRepository group 
相關問題