HN Hall of Fame Weekly email

Visual and interactive way to learn Git

learngitbranching.js.org Tools, games & demos Interactive tools & demos Software engineering Class of 2024-09 Hall of Fame
Screenshot of learngitbranching.js.org captured 2026-07-20
Page preview · captured 2026-07-20

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

submissions
14
submitters
13
observed span
2016–2024
peak thread · 133 comments
342 pts
latest 20+ return · 2024-09-15
259 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

I recommend this site to people a lot, it's nice. What's not nice is people not being aware that Git comes with a graphical history viewer for your actual repositories, gitk, which should really be people's default go-to. (There's also log --graph if you want ASCII art, but an actual GUI is quite a bit better. There's also other GUIs that display the information gitk does, of course.) Git is truly the Dark Souls of version control systems - that…

juped·342-point thread·

I can't recommend this highly enough. Before, I had been working with IBM Clearcase and SVN, so I don't feel like I "got" git until I saw, visually, the following: * interactive rebasing * how remote branches are represented * what HEAD is, and how it relates to branches * in day-to-day usage, commits are never really thrown away or deleted. For example, git amend doesn't actually delete a commit. This was a great starting point, it's highly interactive, and…

I have these Git shortcuts stored in my .zshrc file: # https://stackoverflow.com/questions/4298960/git-add-a-git-co... git config --global alias.ac '!git add -A && git commit' git config --global alias.acm '!git add -A && git commit -m' git config --global alias.ll '!git log --graph --full-history --all --color --pretty=format:"%x1b[31m%h%x09%x1b[32m%d%x1b[0m%x20%s"' git config --global alias.gst '!git status' git config --global alias.gca '!git commit -a --amend' git config --global alias.gp '!git push origin…

I really levelled up my git skills with this tutorial. Definitely worth putting in the effort.

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
3

100+ points or 50+ comments

Total points
931

reference only — not used in Hall rules or ranking

Total comments
228

reference only — not used in Hall rules or ranking

Every submission

DateTitle as submittedByPointsComments
2016-07-27Learn Git BranchingYahivin20
2016-12-11Learn Git Branchingdkarapetyan40
2017-01-21Learn Git Branching(interactive)vinnyglennon90
2017-07-26Learn Git Branchingstriking30
2017-10-27Learn Git Branchingmodinfo10
2018-11-09Great interactive tutorial for learning Git branching (and more)ocoster30
2018-11-21Learn Git BranchingFirst breakoutgerbilly30027
2020-08-12Learn Git InteractivelyVitalyAnkh20
2020-09-25Visual and interactive way to learn GitBest threadselva9334266
2022-06-19Learn Git Branchingmodinfo10
2023-11-03Visual and Interactive Git Tutorialtrealira21
2023-12-01The most visual and interactive way to learn Git on the webwilliamwoodhq21
2024-02-07Learn Git Branchinglegrande10
2024-09-15Learn Git BranchingHall induction · Latest 20+ point returndsego259133