如何从索引"中的#34;无序阶段条目中恢复git中的错误

时间:2015-05-15 16:52:35

标签: git git-svn

我刚刚将git2.0.5升级为2.3.6,我现在无法在其中一个存储库中运行git svn fetch

$ git svn fetch
fatal: unordered stage entries in index
write-tree: command returned error: 128

git status显示了一些未跟踪的文件,但其他方面都是干净的。

我找到了引入此项检查的更改,其中包含摘要" read_index_from(): catch out of order entries when reading an index file" (首先出现在2.2.0),以及其中一些mailing list discussion,其中包括:

  

我认为我们一直在讨论如何保护损坏的索引文件   通过其他人写的工具,所以如果我们的话,我不会感到惊讶   当前工具集不允许您重新创建某些破损; - )

我不记得在这个回购中运行任何其他工具;除了一系列git svn fetch es之外,它并没有做太多日常工作。 (但它已经存在了几年,所以谁知道。)

无论如何,我该怎样做才能从这种情况中恢复过来?我试图找到一个像这样的多个索引条目的路径,但没有结果:

$ git ls-files -s | cut -f 2-100 | sort | uniq -c | grep -v '^[ \t]*1 '

1 个答案:

答案 0 :(得分:2)

  

我该怎样做才能从这种情况中恢复过来?

https://stackoverflow.com/a/27481661/3161761

类似这样的事情

rm .git/index
git add -A