【问题标题】:Git, Windows, Linux & NTFS: "index file open failed"Git、Windows、Linux 和 NTFS:“索引文件打开失败”
【发布时间】:2013-02-21 23:33:53
【问题描述】:

我在 Windows 7 中的 NTFS 分区上创建了一个 git 存储库,在 Linux(Ubuntu 12 x64,双启动设置)中打开它时,我收到了 index file open failed 错误。我怎样才能找出问题所在?该分区以读写方式安装,我从未遇到任何其他问题。 git 是否以 Windows 与 Linux 的不同格式存储数据,我需要进行克隆或一些转换?我真的很希望能够在两个操作系统中处理同一个 repo 而无需克隆......

澄清:在 .git 目录中运行命令 cat index 时,我也会得到 cat: index: Input/output error ,所以这是一个与 NTFS 相关的问题......但我之前从未遇到过它,直到以跨系统的方式使用 git,我已经从 NTFS 部分运行其他应用程序并复制了周围的文件......

【问题讨论】:

    标签: linux windows git ntfs


    【解决方案1】:

    .git/index 文件是一个二进制文件,它描述了当前的工作目录。也许git fsck 能够修复它(将您拥有的那个移开,以确保它在您闲逛时不会丢失,或者对存储库的副本进行任何操作)。您可以尝试在本地克隆存储库,克隆可能会获得文件的良好副本,然后您可以将其复制到损坏的文件上。

    可能是权限问题?备份相关内容,对驱动器进行碎片整理,运行硬件检查(可能是损坏/损坏的磁盘!)。

    【讨论】:

    • 如果catting 给出EIO 错误,git fsck 将无济于事。
    • @hobbs 确实!我刚刚放弃了这个,只是在 Windows 中使用一个 repo,在 linux 中使用另一个 repo 都同步到远程 repo ...如果这是一个驱动程序问题,我只是没有时间和技能来调试这样的东西所以最好绕过它...
    • @hobbs,如果文件损坏,请将其移开并重新创建应该有帮助。
    【解决方案2】:

    您的 Linux NTFS 驱动程序已损坏,或者您的文件系统损坏,或两者兼而有之。重新启动到 Windows 并运行磁盘检查实用程序,然后看看它完成后的情况。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-06
      • 1970-01-01
      • 2016-12-23
      • 1970-01-01
      • 2020-09-12
      相关资源
      最近更新 更多