繁体   English   中英

git pull 时无法统计错误

[英]Error cannot stat upon git pull

我尝试使用以下命令从远程分支执行 git pull:

$ git pull origin branch_name
username@private_repository's password:
From ssh://private_repository/path/project
 * tag               branch_name       -> FETCH_HEAD
error: cannot stat 'path/name/of/file': Permission denied
error: cannot stat 'path/name/of/file': Permission denied

但我收到以下错误:

error: cannot stat 'path/name/of/file': Permission denied 
error: cannot stat 'path/name/of/file': Permission denied

有谁知道这是什么意思,我能做些什么?

谢谢

对于那些工作的人:

  • 智能创意
  • 视觉工作室
  • 记事本++

关闭解决方案可能会解决此错误 IDE 的 git 工具可能仍然保留有问题的文件。

我已经开始使用 Atom 并发现它是问题所在。 需要刷新 Atom 文件树并解决 git 问题。

我在 Atom 上反复遇到过这个问题,每次关闭 Atom 都为我解决了这个问题。 使用可能受拉动影响的文件关闭任何应用程序。

我对这个错误有不同的解决方案。 我一直在使用 atom.io 作为我的开发工具。 我想放弃我最新的试用工作(通过git clean -df后跟git checkout -- . )当我这样做时,Atom 的目录树中显示了一些剩余的空目录。

那些空目录产生error: cannot stat 'path/name/of/directory': Permission denied当我尝试检查 git 中的替代分支时。 令人沮丧。

解决方法是简单地单击目录树中 Atom 中的目录,它们会立即“噗”地消失。 一旦它们消失了,git 中就不再有错误了。

我遇到了同样的问题,我想出的方法是重新启动我的代码编辑器,关闭与项目 (Atom) 和我的 git GUI (SourceTree) 相关的所有文件。 之后,您可以更改分支。

解释很简单——您对 git 文件和存储库的权限存在安全问题。 您需要具有从 git 中提取文件的权限。

如果目录权限为 755 (rwxr-xr-x),包括所有父目录,则任何人都可以列出目录内容。

但是你不能,所以这通常意味着完整的目录路径没有 755 权限。 这也意味着所有父目录都必须具有 +x 权限。

就我而言,是 Windows 资源管理器阻止了 de 文件。 我用任务管理器重新启动它(鼠标右键单击,重新启动),问题就消失了。

此外,Angular CLI 可以阻止您的文件。 因此,请确保停止运行 ng serve。

我的决议与上述大多数类似:

  • 我关闭了 Visual Studio Code,
  • 关闭所有打开的文件资源管理器窗口,
  • 确保我的 bash/powershell 窗口都没有打开该目录。

这仍然对我不起作用。 我结束了:

  • 检查不同的分支,
  • 重新检查我试图拉的分支。

这次当我运行git pull它起作用了。

对我有用的是在管理员模式下运行 sourcetree 和visual studio

右键单击图标(sourcetree 或visual studio),您应该会看到一个选项“以管理员身份运行”

在此处输入图片说明

或者转到特定应用程序的属性并在选项卡快捷方式中选择高级并勾选选项“以管理员身份运行”

在此处输入图片说明

是的,所以我刚到这里并为 Visual Studio 用户提供了一个简单的修复。

如果您签出一个分支,但尚未将 Visual Studio 设置为焦点,它将暂时锁定文件。

一旦你点击 VS 并允许它重新加载项目文件,你应该能够再次拉...用户错误在这里

当我尝试在项目的两个分支之间切换时遇到了这个问题。 发生这种情况的原因是 git 试图访问在我的代码编辑器中保持打开状态的文件。 我以管理员身份运行我的编辑器,然后切换到另一个分支。 它奏效了。 我希望它可以帮助那里的人!

我在执行git pull --all后得到了这个

一个git pull解决了这个问题

我认为问题的根源在于服务器上的某些分支已被删除。

您的 git 环境设置不正确。

Repos 应该归用户 git 所有。 所以用户 git 应该接受你的公钥。

不确定您在这里使用的是什么后端,因此添加密钥的方法会有所不同。

我有npm run watch for VueJS 在后台进程中运行,我忘记了这会导致 git 在从存储恢复时阻止任何更改。 所以要注意这一点!

我关闭了存在项目的 Visual Studio Code,但问题仍然存在:错误:无法统计,权限被拒绝。

然后我看到 grunt 正在运行,所以我关闭了 grunt 并再次检查并解决了问题!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM