When I do an interactive rebase, e.g.
git rebase -i HEAD~3
the rebase interactive editor (vim in my case) opens to let me edit the commits to rebase
pick c843ea2 Set Vim column limit to 80 (OS X)
pick fc32eac Add Bash alias for `pbcopy` (OS X)
....
If I now decide that I want to abort the rebase and quit vim using :q
the rebase starts anyway. I'm using git version 1.9.0.msysgit.0
on windows.
Sure I can just delete all pick
lines, but it might be a lot to do if I rebase a longer history. Is there another way?
How can I quit the rebase interactive editor (vim) and abort the rebase?
To do this, simply delete all commits and actions (i.e. all lines not starting with the # sign) and the rebase will be aborted!
You can run git rebase --abort to completely undo the rebase. Git will return you to your branch's state as it was before git rebase was called. You can run git rebase --skip to completely skip the commit.
Just right-click on the commit you want to edit and select Interactively Rebase from Here… Select reword on the commit and click Start Rebasing. Edit the commit message and click Resume Rebasing.
If you exit the editor with an error code, the rebase will be aborted.
To exit with an error code on vim, do
:cq
See here and vimdoc here.
Just delete all the lines that are not comments from the file. Then save it to the default supplied path and exit the editor.
As a result git will just do nothing in this rebase.
To delete all lines in vim you can use
:%d|x
Then save and quit.
delete all lines of file in Vim
How to exit the Vim editor?
VIM - multiple commands on same line
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With