Git Recovery with git-fsck: A Too-Short Tale

Beloved Reader.

Forgive me for I have softwared.

I’m on the tail-end, or possibly tale-end, of a project that was pretty rough as such things go. Not the toughest gig I’ve done, but no cake-walk either.

Anyone who’s professionally played in this space knows that Murphy’s law is drawn to tight-deadline software development projects like a wunch of salivating, button-eyed bankers racing to the reading of the last will and testament of Marley & Marley.

That's Koch, spelled M-A-R-L-E-Y.

M-A-R-L-E-Y!  Put it through certain insanity-filters, and I swear it sounds like K-O-C-H!

It should come as no surprise then gentle reader, when I tell you that for the first time ever, I had the local GIT repository housing my project corrupt itself at about 6:00PM, on the 13 of May. Not long after my realisation that I’d severely underestimated just how much extra time I was going to need to implement the functionality promised.

My last remote backup happened the Friday before, but the entire day was spent on an experimental branch that I had just decided was mostly a flop, except for that bit that I really, really didn’t want to re-do from scratch.  ESRI ArcObjects reader!  If you’ve come here thanks to those last two linked terms, you’ll no doubt understand my horror at trying to re-construct  something that I’d finally cracked using the ArcObjects API.

ArcObjects and me, sitting in a tree...

ArcObjects and me, sitting in a tree…

At the time, I was pretty distraught, but a suggestion from a friend sent me on  a search the next morning that had the repository up and going again in pretty-much the same spot I thought I was in moments before it took its flame-decal-festooned minecart of brakelessness straight to hell.  This friend extracted a promise from me that I’d blog about it — why do I agree to these things?

Now… Murphey isn’t quite done yanking my chain just yet.  I included links see, and some text, in a draft blog post that I’d eventually get to, but which is not THIS post.   Instead, you get a too-short tale around git repository recovery and a too-long tale on why you got this too-short tale because…

I can’t remember a f**king thing about what I did to fix it.

Re-reading the links and text I supplied, I can assure you that this link on git maintenance and data recovery was absolutely essential.  I also vaguely recall needing to get precise with what I was doing by closely studying the manual entry for git-fsck, which I DO remember was pretty-much “the shiz” to getting my repository back.

And that’s it.


Consider me chastened. I should have taken that bit of extra time to get it all down when it was fresh.  This post, easily compressed to a single paragraph with two links was proudly brought to you by the letter “sleep-deprivation induced memory loss”, and the numbers “f**king anti-climactic ending dude”, and “Where’s the undo-reading-of-this-blog-post button?”.

That’s about the size of it.

I’ll make it up to you gentle reader, with extra bloggy goodness in a future with absolutely no deadline promises (twitch).


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s