2011-03-29 97 views
3

我得到下面當我嘗試從我的服務器發送一個目錄與github上的私人回購的git的權限..趕上22與私人回購

$:/home/my_site/$ git push origin master 

    Enter passphrase for key '/home/adamgamb/.ssh/id_rsa': 
    error: unable to create directory for .git/refs/remotes/origin/master 
    error: Cannot lock the ref 'refs/remotes/origin/master'. 
    Everything up-to-date 

目前,如果我嘗試使用git與出sudo我得到這個錯誤,因爲文件無法訪問,但是,如果我使用sudo git publickey被拒絕(它在用戶的〜/ .ssh中執行此操作)

任何人都可以解釋如何避免這個問題?

$: sudo git push origin master 
    Permission denied (publickey). 
    fatal: The remote end hung up unexpectedly 
+0

請不要使用* sudo *作爲對權限問題的第一個響應。如果您希望能夠以普通用戶身份運行命令,那麼請自行查找並修復權限問題。在最好的情況下,以root身份運行將暫時掩蓋問題;通常它會產生更多的權限問題(以root運行時創建的文件不會(通常)由普通用戶寫入)。 – 2011-03-30 03:48:49

回答

7

,它的抱怨不能夠建立實際上是在你的家目錄的目錄 - 即,〜/ git的/參/遙控器/產地/主。可能發生的是你在sudo下運行git,以root身份創建這些文件,現在你無法訪問它們。作爲根,你可以播放-Radamgamb〜adamgamb/.git,然後再試一次。

+0

啊!感謝您的回答,只是意識到我自己:/ – null 2011-03-29 21:40:44

+0

@亞當:請「接受」:) – 2011-03-29 22:05:31

+0

我接受... ;-) – null 2011-03-30 07:33:09