git error: unable to index file Crashlytics.framework/Headers

git error: unable to index file Crashlytics.framework/Headers

我在 iOS 应用程序上使用 Twitter 的 Fabric。

Fabric 中的 Crashlytics 刚刚自我更新,现在我无法将我的项目提交给 git。我收到错误:

git error: unable to index file Crashlytics.framework/Headers

fatal: updating files failed

知道出了什么问题或如何解决吗?

运行 git status 显示:

Untracked files:
(use "git add <file>..." to include in what will be committed)

Crashlytics.framework/Info.plist
Fabric.framework/Info.plist
profile.xcodeproj/project.xcworkspace/xcuserdata/
profile.xcodeproj/xcuserdata/

进入终端并手动提交到 git 解决了这个问题。从那以后,我在 xcode 中的所有进一步提交都起作用了。

git add .
git commit -m "message"

我在 Bolts.frameworkParse.framework 上也遇到了同样的问题。两者都已添加到 git 存储库中,因此将它们重新添加并不能解决问题。我必须先删除:

cd MyApp/SDK/
git rm -r Parse.framework/
git rm -r Bolts.framework/

我不得不将它们再次复制到 SDK/ 文件夹中并添加到 git

 cd MyApp/SDK/
 git add .
 git commit * -m "Maintenance: Fixed git error unable to index file"

我认为这与 git 子模块有关,因为我有类似的问题。但是添加或删除它没有帮助。有效的方法是将其重置为 HEAD 版本,例如

git reset HEAD problematic_file_or_dir

这发生在我的 IntelliJ IDEA 上。当我尝试使用 IDE git 插件提交时出现错误弹出窗口。可能这与我暂存一个以前是文件但现在是目录的路径,并将之前的文件移动到新目录有关。

假设路径是bin/yii。我所做的是:

  • 将目录重命名为不同的名称,例如bin/yii-temp
  • 提交目录及其内容
  • 将目录重命名回 bin/yii
  • 提交 --amend 我刚刚提交的内容。