我已经看到很多关于这个的其他线索,他们没有帮助.
我有一个非常简单的回购 - 两个JavaScript文件.我在Macbook上有100多GB.当我尝试将文件移动到子目录中并在本地暂存我得到的更改时...
致命:无法编写新的索引文件
无论我是在终端中执行所有操作还是使用像SourceTree这样的GUI,都会发生这种情况.此外,其中一个文件被锁定,我无法删除工作目录,直到我注销并重新登录.
为什么会这样?锁是否阻止某些东西上演?如果是这样,我在OS X上解锁问题文件的方法是什么?远程仓库是谷歌代码,如果这有所作为,虽然我还没有推到遥控器.一切都是本地的.
the*_*oom 57
过去几天我一直遇到同样的问题.基本上,在我不知情的情况下,整个仓库已经被移动到一个新的文件系统,当我试图运行git status时,它突然报告了repo中的每个文件都被更新了.
所以,经过多次google搜索,我尝试了以下内容:
设法解决问题的唯一方法是复制索引文件,删除原始文件并重命名副本.
我知道它不是真正的"解决方案",但现在它神奇地工作> <,所有文件/分支都完好无损.如果有人知道为什么这可能有效,请告诉我.
小智 15
我在Mac上遇到了同样的问题.它似乎是由文件系统ACL引起的.尝试chmod -RN /path/to/repo清除ACL.在这之后,我能够提交更改.使用技巧复制索引文件,删除原始文件并移回副本,实现相同的结果.
该错误消息fatal: Unable to write new index file意味着我们无法将新内容写入 git 索引文件.git\index(有关 git 索引的更多信息,请参阅此处)。回顾了这个问题的所有答案后,我总结了以下根本原因:
.git\index被其他用户或进程锁定。(解决方案:解锁文件)链接查找 Windows 中哪个进程正在锁定文件或文件夹指定了以下方法来查找正在锁定特定文件的进程:
SysInternals Process Explorer - 转至“查找”>“查找句柄或 DLL”。在“句柄或 DLL 子字符串:”文本框中,键入文件的路径(例如“C:\path\to\file.txt”),然后单击“搜索”。应列出具有该文件的打开句柄的所有进程。
使用上述方法查找锁定的进程.git\index,然后停止锁定可执行文件。这样就解锁了.git\index。
例如,Process Explorer 搜索显示已.git\index被 锁定vmware-vmx.exe。挂起 VMWare Player 虚拟机(通过共享文件夹访问 git 存储库)解决了该问题。
我也有/有这个问题。就我而言,没有任何解释适用:
直到我发现,一旦我通过另一台(linux)计算机访问了 windows 文件夹,git 就毫无怨言地工作了。它一定与我在普通 debian buster 计算机上使用的 git 版本有关:git 1.2.20 给了我“无法写入新索引”错误,而从 ubuntu focus virtualbox (git 1.2.2) 添加了文件没有问题。
| 归档时间: |
|
| 查看次数: |
82598 次 |
| 最近记录: |