Windows 上的 Git Bash - 致命:无法创建“C:/Users/scharko00/Documents/GitHub/myProject/.git/index.lock”:没有这样的文件
Posted
技术标签:
【中文标题】Windows 上的 Git Bash - 致命:无法创建“C:/Users/scharko00/Documents/GitHub/myProject/.git/index.lock”:没有这样的文件或目录【英文标题】:Git Bash on Windows - fatal: Unable to create 'C:/Users/scharko00/Documents/GitHub/myProject/.git/index.lock': No such file or directory 【发布时间】:2022-01-22 19:02:04 【问题描述】:我在 Windows 上的 git bash 遇到了一个奇怪的问题,我不知道如何解决这个问题。
我正在使用 Github Desktop 和 Visual Studio 2022,并在 Github 桌面上完成大部分 git 工作。现在我有一个问题,我需要使用 git rm file.txt --cached 从 repo 中删除一个文件。所以我打开 git bash 并尝试这样做,但 git 响应:
fatal: Unable to create 'C:/Users/scharko00/Documents/GitHub/myProject/.git/index.lock': No such file or directory
请注意“没有这样的文件或目录”。 .lock 文件卡住并且git响应“文件存在”是一个常见问题,在inet上有很多解决方案。
经过一些实验(在提升模式下运行 git bash,创建一个虚拟 index.lock,切换到 powershell,使用 git cmd,...)我发现 git 在所有命令上都给我同样的错误。
因此,如果我尝试签出现有分支(或添加文件或创建新分支),同样的错误。
但如果我使用 Github Desktop,一切正常。
对我来说,git 似乎缺少一些安全设置,但我就是不知道是哪一个。
非常感谢任何提示或想法。
Screenshot Git Bash
【问题讨论】:
【参考方案1】:前言
-
Windows 上的 Git-Bash(仍然)总是 坏主意 (tm)。您必须改变习惯,为您的环境使用更多原生工具
我假设,这是相当普遍的所有者|权限|ACL问题,建议检查一下这个假设|推测
脸
找到并记录这些问题的答案(逐步),甚至是显而易见的:
C:/Users/scharko00/Documents/GitHub/myProject/.git/
存在吗?
就本地 Windows 用户而言,C:/Users/scharko00/Documents/GitHub/myProject/.git/
的所有者是谁以及为此子树定义了哪些权限(文件夹属性 - 安全 - 组+权限部分)?
您的控制台在哪个 Windows 用户下运行以执行 git 命令(Git 继承了该用户)? (!scharko00 || !Administrator Group)无权写入C:/Users/scharko00/Documents/
AFAICR
不管怎样,对于 SU 来说,这比对于 SO 来说更重要,问题 IMNSHO
【讨论】:
以上是关于Windows 上的 Git Bash - 致命:无法创建“C:/Users/scharko00/Documents/GitHub/myProject/.git/index.lock”:没有这样的文件的主要内容,如果未能解决你的问题,请参考以下文章
致命:无法访问“H:\/.config/git/config”:参数无效 [Windows 7 上的 Git]
如何在 Windows 上的 Git Bash 中退出“git diff”的结果? [复制]
我可以在 Windows 上的 Git Bash 中使用 gcloud 吗?