当我尝试从我的服务器发送一个目录到一个带有github的私人存储库时,我得到以下内容。
$:/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
目前,如果我尝试使用带有sudo的git,我会收到此错误,因为无法访问文件,但是,如果我使用sudo,则拒绝git publickey
(它位于〜/。用户的ssh我执行此as)
任何人都可以解释如何避免这个问题吗?
$: sudo git push origin master
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
答案 0 :(得分:7)
它抱怨无法创建的目录实际上在您的主目录中 - 即〜/ .git / refs / remotes / origin / master。可能发生的事情是你在sudo下运行git,以root身份创建这些文件,现在你无法访问它们。作为root,你可以chown -R adamgamb~adamgamb / .git,然后再试一次。