Explain Git + GitHub Like I'm Five

Did you find this post useful? Show some love!
DISCUSSION (7)

I am Git. I track all of your code changes. I am GitHub, I use Git to display all of your code changes.

We want to make a list of steps for a computer to do. The computer does work that people could do but faster. This list of steps may need to change. When we change the steps we want to be able to see how our steps have changed over time. Git keeps a record of every change and only the changes not a copy of everything. It is distributed so you can keep a copy of the source on your own machine and work and then send your changes somewhere else where others might be working to integrate their changes to the code.

Say you are writing a short story and you want to do a really good job. You might write the story on one sheet of paper, and then get another sheet of paper and write another version, and then keep writing more versions on more sheets of paper. After a while, you'd end up with lots of sheets of paper that weren't the version you were currently writing. You might put those sheets in a folder so that you can go back and see old drafts of your story.

You give that folder to your mom to keep track of, because you know that you can always ask mom for one of the versions of your story if you need it. Plus, mom keeps photocopies so she can give versions of your story to your siblings. Mom also keeps similar folders for the stories that your siblings write.

Git is the folder, and your pieces of paper are code. Your mom is GitHub.

My mom keeps my "code" on the refridgerator so everyone can see :0. love this analogy

I ended up writing an article about writing responses to #explainlikeimfive, inspired by this discussion!

Here's the link: dev.to/dmerand/explain-it-like-im-...

My favorite explanation so far! Thanks so much!!

You are welcome! Glad it was helpful.

Classic DEV Post from Apr 30

Tech Events this Week - 4/30

Let's crowdsource tech events going on in different areas!

READ POST
Follow @aspittel to see more of their posts in your feed.
Deja
Member since Feb 18, 2018
Trending on dev.to
Has anyone used Okta?
#discuss
Designing A Voting System For 1 Billion on the Blockchain (Part 2) - How To Keep A Secret
#blockchain #opensource #architecture #discuss
Learning the Granular Details of a Programming Language?
#discuss #javascript
Which monitor should I buy for programing?
#discuss #webdev
How banks handle our balance, technically?
#explainlikeimfive #programming #databases #design
Have you used the new "suggested changes" in GitHub pull requests?
#github #opensource #discuss
Do not be this kind of developer
#career
Dev.to Review #4: Top 7 Of The Week, Discussed
#discuss #audio #bestofdev #popular