致命:无法打开文件.git/rebase-merge/done进行阅读:没有这样的文件或目录

And*_*rea 46 git github

我打算做一个改变来删除我的最后一次提交,但我不想完成所以我退出了.(我意识到这可能不是最好的方法,但它已经完成了)我想我做错了因为我得到了错误:fatal: Could not open file .git/rebase-merge/done for reading: No such file or directory每次我跑git status.如何摆脱这个错误,以便我可以继续提交?我可以删除该文件吗?如果我可以删除它,我该怎么做?

Dav*_*idN 85

在您尝试以下操作之前,请先确保您stashcommit任何未提交的更改,否则您将不可撤销地丢失它们.

然后尝试做一个git rebase --abort.

  • 警告:如果您有任何未提交的更改,这可能会不可撤销地删除它们:(我今天早上启动,做了一些工作,试图提交并得到此错误;谷歌搜索并找到了这个答案;尝试过;我的最后一小时工作已经消失了. (10认同)
  • git rebase --abort显示相同的错误:...... /未找到 (4认同)

Ste*_*ano 19

Stash 或 commit 对我不起作用,我只是创建了 git 抱怨的文件,直到它起作用为止!

$ git rebase --abort
error: could not read '.git/rebase-apply/head-name': No such file or directory

echo "master" > .git/rebase-apply/head-name

$ git rebase --abort
error: could not read '.git/rebase-apply/onto': No such file or directory

$ echo "develop" > .git/rebase-apply/onto

$ git rebase --abort
error: could not read '.git/rebase-apply/head': No such file or directory

$ echo "develop" > .git/rebase-apply/head
Run Code Online (Sandbox Code Playgroud)

之后git rebase --abort工作。您放入这些文件中的分支名称需要存在,在我的情况下,我不关心我的本地更改,但如果您这样做,显然要小心。


Dim*_*tas 5

DavidN 中止 rebase 的解决方案很棒,只要自上次 rebase 向南以来您没有任何未分阶段的更改!

如果您在 rebase 尝试后编写代码,忽略could not open file .git/rebase-merge/done消息,

那么你最好的办法就是做

git stash
Run Code Online (Sandbox Code Playgroud)

保存您的本地更改,然后才中止变基。

我确信这是 stackoverflow 问题之一,那些急于解决问题而不考虑影响的人只会运行 abort 命令并很快后悔。