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.
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.
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?”.
I’ll make it up to you gentle reader, with extra bloggy goodness in a future with absolutely no deadline promises (twitch).