请帮助我,我试图在我的终端运行这个:

asgard@asgard-A7N8X2-0:~/CollegePortal$ git pull
error: cannot open .git/FETCH_HEAD: Permission denied

那我试试这个

asgard@asgard-A7N8X2-0:~/CollegePortal$ sudo git pull
Permission denied (publickey).
fatal: The remote end hung up unexpectedly

帮帮我,我不明白这个问题。


当前回答

这个错误的原因可能是多重的,但在我的情况下,我更新了根分支,然后当我试图更新它与普通用户它给我错误。

尝试两种解决方案,其中一种应该对你有效

1- sudo chmod g+w .git -R

如果它不工作,请尝试下一个解决方案,希望它能解决你的问题

2 - rm -f .git/FETCH_HEAD

其他回答

这个问题的答案是确保.git/FETCH_HEAD有写权限,这样你就全部设置好了。

我在Windows上遇到了这个问题,通过授予写权限解决了这个问题。

在unix中,可以从项目存储库中运行chmod a+rw .git/FETCH_HEAD,然后它就可以工作了。

如果你想给小组权限,

sudo chmod g+w .git -R

对我来说是最好的。

是操作系统

sudo chmod -R g+w .git 

当我在做包安装时,我得到:

Following files may not be writable, so sudo is needed:
  /Library/Ruby/Gems/2.6.0
  /Library/Ruby/Gems/2.6.0/bin
  /Library/Ruby/Gems/2.6.0/build_info
  /Library/Ruby/Gems/2.6.0/bundler
  /Library/Ruby/Gems/2.6.0/cache
  /Library/Ruby/Gems/2.6.0/doc
  /Library/Ruby/Gems/2.6.0/extensions
  /Library/Ruby/Gems/2.6.0/gems
  /Library/Ruby/Gems/2.6.0/specifications
Fetching gem metadata from https://rubygems.org/.........
error: cannot open .git/FETCH_HEAD: Permission denied

我已经按照这里的步骤更新了bash_profile,添加了一个rbenv shim。

export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"

但不知什么原因,我把它们删掉了。一旦我取消了注释,我就能够成功地运行bundle install。

试试这样吧,

第一步:首先确认你是谁?它将返回当前用户名,例如ubuntu

$ whoami 

步骤2:然后设置您当前用户的权限,在这种情况下,ubuntu by

sudo chown -R ubuntu .git/

当。git文件夹被隐藏时,其中的所有文件也被隐藏。 只隐藏.git文件夹而不更新递归文件,它将工作。