fatal: Could not open file .git/rebase-merge/done for reading: No such file or directory

Before you try the following, make sure you stash or commit any uncommitted changes first, or you will lose them irrevocably.

Then try to do a git rebase --abort.


Stash or commit didn't work for me, I just created the files that git was complaining about until it worked!

$ 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

After which git rebase --abort worked. The branch names you are putting in those files needs to exists, and in my case I didn't care about my local changes, but obviously be careful with this if you do.


DavidN's solution to abort the rebase is great as long as you don't have any unstaged changes since the last rebase going south!

If you wrote code after the rebase attempt, ignoring the could not open file .git/rebase-merge/done message,

then your best bet is to do

git stash

to save your local changes and only then abort the rebase.

I am sure this is one of those stackoverflow questions, where people who are eager to solve their problem without considering the implications, will just run the abort command and regret it soon after.

Tags:

Git

Github