Crap! About a week ago, I was rebasing some commits while trying to clean up my repository, and apparently I didn\'t actually finish it. Today, a week and several commits later,
Check git reflog
. You can walk back in time using those commit hashes as a reference in almost all cases.
I'd also physically copy the git repo directory elsewhere as a place to do preliminary testing to see what will work, that way you can mess with whatever you want without losing untracked files or getting things into a state that you can't come back from.
You should be able to get the SHA1 of your most recent commits (that disappeared after the rebase --abort) with a git reflog.
You will be able then to reset your current branch to those SHA1
# Suppose the old commit was HEAD@{2} in the ref log
git reset --hard HEAD@{2}
It is a bit like "Undoing a git reset --hard HEAD~1".
See also the "illustrated guide to recovering lost commits with Git", for other examples of recovery.