Abort and Continue

Aborting and Continuing a Rebase Safely

A stopped rebase leaves the repository in a special state, and git status says where you are:

Checking the state of a stopped rebase, then finishing itShell
git status
git add app.js
GIT_EDITOR=true git rebase --continue
Output
interactive rebase in progress; onto 1821d5c
...
You are currently rebasing branch 'paginate-api' on '1821d5c'.
  (fix conflicts and then run "git rebase --continue")
  (use "git rebase --skip" to skip this patch)
  (use "git rebase --abort" to check out the original branch)
...
        both modified:   app.js
...
Successfully rebased and updated refs/heads/paginate-api.

Even a plain git rebase reports "interactive rebase in progress": the merge backend runs the same todo machinery, keeps its state in .git/rebase-merge/, and detaches HEAD until it ends. Your ways out:

After a rebase finishes, git reset --hard ORIG_HEAD (rerere) or the reflog (Undoing a Bad Rebase) undoes it.