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

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

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


当前回答

我遇到了完全相同的错误,但在我的情况下,这个问题是在升级到PHP版本后重新构建Apache的结果。长话短说,我忘了安装Apache模块“suexec”。

这与集团或所有权无关。我只用了两天就想明白了,有人朝我开枪…

其他回答

错误消息“不能打开.git/FETCH_HEAD: Too many links”表示指向该文件的硬链接太多,可能超过了文件系统允许的最大限制。

要解决此问题,您可以尝试以下步骤:

Git branch——merged | grep -v "\*" | xargs -n 1 Git branch -d 运行git gc来清理存储库并减少对象和链接的数量。 如果上述步骤不起作用,您可能需要将存储库克隆到一个新目录并删除原始目录。

使用实例设置当前用户的权限

$ sudo chown -R <用户名> .git/

当您没有给予.git文件夹足够的权限时,就会出现此问题。 要解决这个问题-

首先导航到您的工作目录。 输入命令- sudo chmod a+rw .git -R

希望能有所帮助!!

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

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

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

检查是否对.git/目录有足够的权限。你应该有写权限。可以使用下面的命令进行设置。

进入你的项目文件夹:

chown -R youruser:yourgroup .git/