HN Hall of Fame Weekly email

Oh Shit, Git?

Screenshot of ohshitgit.com captured 2026-07-20
Page preview · captured 2026-07-20

Resurfaced independently across 7 calendar years, with breakout response in 6 of them.

submissions
8
submitters
8
observed span
2016–2025
peak thread · 508 comments
1209 pts
latest 20+ return · 2025-01-16
464 pts

Submission timeline

2007–2026

One slot for every year since HN launched. Height is that year's peak points; orange marks a 100+ point or 50+ comment breakout. Select a bar to open its strongest thread.

First comments on top threads

HN comment order

Adopted a git GUI years ago and haven't looked back. I get looks sometimes, but I can't help but gloat when I can stage and unstage individual lines in less than a second. I think anyone who uses the CLI is either trying too hard or hasn't realized the beauty of a git GUI. Takeaways: - My commit time is usually much faster than coworkers, with higher accuracy (less frequent accidental commits, etc.) - I don't remember the last time…

I can't believe no one has responded yet with "use a GUI". After gaining a basic understanding of how branches and merges work, and I do mean basic, I've never been able to screw up a local repo with a GUI client enough that I haven't been able to recover with the same GUI tools. I understand that people need to know how to use their tools, but for git most people can get away with the very basic usage…

Some changes I would make: 1. Always use `git switch` instead of `git checkout` 2. Avoid `reset --hard` at all costs. So for the "accidentally committed something to master that should have been on a brand new branch" issue, I would do this instead: # create a new branch from the current state of master git branch some-new-branch-name # switch to the previous commit git switch -d HEAD~ # overwrite master branch to that commit instead git switch -C master…

pitaj·464-point thread·

Reading this article, I realize that I'm old now. I still remember wrestling with cvs, svn. Merge, branch were slow and even more challenging. It was much easier to mess up and so difficult to rewind. When I first learned git, I thought it's pretty neat. It solves merge, branch, rewind problems. Git is one of the things in life that doesn't work like the way we think. But it turns out to be a better way.

_7fvc·412-point thread·

The first top-level comment from each of the four biggest threads, in HN’s own order. Excerpts are shortened; open a comment for full context.

Breakout years
6

100+ points or 50+ comments

Total points
3494

reference only — not used in Hall rules or ranking

Total comments
1768

reference only — not used in Hall rules or ranking

Every submission

DateTitle as submittedByPointsComments
2016-09-09Some bad Git situations and how I got myself out of themFirst breakoutemilong713335
2017-12-18Oh shit, git: Getting myself out of bad situationsBest threadadishaporwal1209508
2019-05-14Oh shit, git (2016)IvarsIndriks412272
2020-08-15Oh Shit, Git?auraham302156
2022-01-28Oh Shit, Git?Hall inductionfabianh00191
2022-06-25Oh Shit, Gitlayer8382231
2024-02-13Oh Shit Gitopentokix31
2025-01-16Oh Shit, Git?Latest 20+ point returnAnon84464264