Explain Git + GitHub Like I'm Five

Did you find this post useful? Show some love!

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 Jun 8

Mental Health in Tech

Working with it. Coping with it. How do you deal?

Follow @catcarbn to see more of their posts in your feed.
Member since Feb 18, 2018
Trending on dev.to
So You Learned React, and Now You Work with jQuery...
#career #beginners #productivity
Who's looking for open source contributors? (June 18 edition)
#discuss #opensource
Does anyone else feel bothered when people term us as coders instead of developers or programmers..?
Biggest aha moment
What's a recent frustrating bug you've had with a crazy simple solution?
#debugging #discuss #php
Back to basics: Naming
#naming #javascript #programming #discuss
Postgres or mysql
Its 2018, why are you still going to the office?