【问题标题】:fatal: cannot update the ref 'HEAD': unable to append to '.git/logs/HEAD': Bad file descriptor致命:无法更新 ref 'HEAD':无法附加到 '.git/logs/HEAD':错误的文件描述符
【发布时间】:2019-04-12 21:43:25
【问题描述】:

我正在从事机器人框架自动化项目。突然 git commit 不起作用我在提交命令上遇到错误

**fatal: cannot update the ref 'HEAD': unable to append to '.git/logs/HEAD': Bad file descriptor**

我正在使用 Windows 机器。到目前为止,我已经完成了 4 次提交,代码在 Repo 中。随着最新的变化,提交没有发生上述错误我已经经历了堆栈溢出中引用的几个问题,但我可以解决它。

请帮我解决这个问题

我使用命令git commit -a -m "description"git commit -m "description"

上面说的 sudo 命令都不适合我

> $ sudo chown -R useremail .git/ 
> bash: sudo: command not found

【问题讨论】:

  • unix.stackexchange.com/questions/354928/… 听起来你缺少 sudo。
  • 我正在使用 Windows 机器 部分向我表明,您遇到了著名的(臭名昭著?)问题,即 Windows 系统拒绝让程序打开任何一些 other 程序已经打开。在这种情况下,找到另一个打开 Git 文件的程序,然后终止它(或等待它完成)。
  • 除一件事外,其他选项均无效,即从 c 驱动器克隆和推送代码我只能在 c 驱动器中工作,而在其他驱动器中,我无法克隆或拉取或推送代码
  • 感谢您的回复。但我可以找到一种解决方案,即 GIT 版本 2.19.1 导致了这个问题。当我降级 git 版本时,它工作正常。
  • 尝试与云服务同步时也会出现此问题。

标签: github git-commit git


【解决方案1】:

当您不小心创建具有 root 权限的分支时,可能会发生这种情况。最好在本地检查 .git 的所有权权限,即 ls -la .git/refs/heads/ 应该归用户所有,而不是 root。

【讨论】:

    【解决方案2】:

    尝试使用相同的命令:

    • 常规 CMD 会话(无 Git bash 或 Cygwin)
    • 最新Git for Windows 2.21
    • 一个新的克隆仓库

    您不应该再次遇到该错误。

    【讨论】:

      猜你喜欢
      • 2023-03-18
      • 2020-01-16
      • 2016-12-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-27
      • 2019-06-11
      • 2013-01-05
      相关资源
      最近更新 更多