Learn Git Branching
Wow! Author here, did not expect this to get submitted to HN yet (was going to finish out a few more levels this weekend and clean everything up). Forgive the giant "TODO" in the help dialogThe link everyone should see is the demo:
http://pcottle.github.com/learnGitBranching/?demoThat shows a few example commands, the completion of a level, and finishes with the help dialog.Some interesting technical highlights- I made heavy use of javascript "Promises" to route control through the entire app. The source code has some nice examples, but it would be callback spaghetti without it- You can import and export trees to share with your friends ("import tree" and "export tree" commands)- You can build levels from within the app with "build level". The intro diaog should step you through the process- It even supports interactive rebasing! Try it out with "git rebase -i HEAD~3"Git is a fairly complex too that can be explained really well graphically. I never understood what I was doing until I saw diagrams in the git manpages and various books around on the internet. I wanted there to be an interactive form of these diagrams but it didn't exist --- so I built it.9,000 lines of JS later I have this. There's still some polishing to be done, but I'd love for the community to share their knowledge about different git workflows and different ways to explain git concepts.I tried to make the bar for contributing as low as possible. You can build a level and submit a pull request without even cloning the repo!