我想在Ubuntu上設置GIT & Apache2,以便多個Ubuntu/GIT用戶可以推/拉文件由Apache2讀取。如何在Ubuntu上配置GIT(權限),以便多個用戶可以讀寫/推送/拉取Apache2文件
我可以在Ubuntu上設置一個擁有自己的GIT存儲庫的用戶,他們可以使用/home/user/.ssh/中的SSH私鑰在他們自己的/ home/user /文件夾內推/拉GIT服務器上的公鑰(例如bitbucket)。但是,如果該用戶被賦予sudo權限並進入Apache2/var/www/html/web根目錄,則他們不再具有通過ssh推送git的權限(因爲git正在查找的是id_rsa的id_rsa根用戶)。一個解決方法是爲根用戶設置一個.ssh密鑰對,以訪問GIT,但是GIT提交不會被用戶分開(破壞版本控制的一個主要目的)。
的WWW的數據組最直接的可能是使文件組可寫和將用戶添加到該組。 – Adrian
我想知道你的意思是「...但是然後GIT提交不被用戶分開」。將被保存在修訂版本中的用戶是「提交」(或作者)代碼的用戶,而不是「推送」的人,並且不依賴於傳輸。 – eftshift0
@阿德里安,謝謝。我將用戶添加到www-data組,然後chmod -R g + rwx。用戶在repo上,他們的公共ssh密鑰在他們的配置文件中,但是git push -u origin master從他們的用戶(不是sudo)返回,並且存儲庫訪問被拒絕。致命的:遠端意外掛斷。如果他們sudo入,它的作品。這是最佳做法,還是用戶可以在他們的用戶中完成所有操作(沒有sudo)? –
user1421347