用私人回购的git权限捕获22

时间:2011-03-29 21:32:28

标签: git ubuntu permissions controls version

当我尝试从我的服务器发送一个目录到一个带有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

1 个答案:

答案 0 :(得分:7)

它抱怨无法创建的目录实际上在您的主目录中 - 即〜/ .git / refs / remotes / origin / master。可能发生的事情是你在sudo下运行git,以root身份创建这些文件,现在你无法访问它们。作为root,你可以chown -R adamgamb~adamgamb / .git,然后再试一次。