What saved my life was the following command:
git reflog
There you find a screen with history commits done to git like this one:
At this point, you only have to find the HEAD@{X}
that you need, create a temporary branch and move to it like this:
git checkout -b temp_branch HEAD@{X}
That way you will have a temporary branch with your lost commit without rebasing or breaking even more your git repository.
Hope this helps...