So, backstory. My hard drive died on machine A. Almost all of my work was already pushed to GitHub and all was dandy on that front, save one repository. So, upon realizing this, I found out, "hey, cool, I actually just sent a tar file of the most recent changes to Guy Guyerson anyway." So I get the tar file and then do something stupid/show how much of a GitHub noob I am. Instead of cloning the repository then adding the updated files, then pushing, I think to myself: I should be able to just push these files, no problem. So I git init,add the remote and then push, but it doesn't work... because the merges are strange. I know about the merges being bad, so I decide to force these files to update and push -f. However, since this is a new .git directory, the push overwrites everything and I lose my entire commit history and all the files that weren't in the tarball are gone.
Is there anyway to get back to that, given that the current local version has no memory of there every being previous commits? I have the beginning of the hash that it overwrote, but the remote has no memory of that commit now either.
I think that the HDD crash may have claimed another victim, as my frustration boiled over and I just wanted to push the updates while I still had them on this older machine.