Version Control with Git

Learning Competencies

By the end of this exploration, you should be able to:

  • Explain what version control is and does
  • Understand what Git is
  • Understand what GitHub is

Summary

Version control software allows groups of people to work together on the same code simultaneously without overwriting each other's work. It is not a programming language like JavaScript, Ruby, or C#. It is software that you download - and programmers use a form of 'distributed version control', which means it manages changes to a project without overwriting any part of the project.

Time Box

ActivityTime
Watch5 minutes
Explore30 minutes
Reflect30 minutes

Follow the timebox suggestions. This is a primer only, and there is a deep dive challenge next to start applying this knowledge. Let the learning competencies be your guide.

Description

Version control enables web developers to collaborate without writing over each other's work and provides an entire history of changes.

The most widely used Version Control Software is called Git

Git doesn't require any remote servers for its operation - it can be installed on your computer. For easy access and collaboration, web developers use GitHub (the largest code host on the planet) for storing and sharing code.

GitHub is a company that provides file hosting online

With over 10 million users, GitHub has become a social network for web developers - much like Facebook or Twitter. You build a profile, upload projects to share and connect with other users by following their accounts. And while most users store programmes and code projects, nothing prevents you from keeping text documents or different file types in your project folders to show off.

So to conclude, Git is a (software) tool that you download while GitHub is a service that you sign up to

Almost all of your learning material will use Git, and nearly all of it will be distributed via GitHub.

Watch

Pro-tip click on the video settings wheel to speed up online tutorials

Explore

  • What is Version Control?
  • What is Git?
  • What is GitHub?

Have a look around the internet. Let the learning competencies at the top of the page be your guide. Take notes and keep within the time frame.

Suggested Resources:

Reflect

In a text document, record your reflections. You'll transfer these reflections to a git file in a later challenge.

In your reflections, answer the following questions:

  • What's the difference between Git and GitHub?
  • Can you think of an analogy to describe them?
  • Do you think you would still remember the difference a week from now if you didn't revisit the material?
  • Did you stick to the timebox suggestions? If not, why not?

Pro-tip click on the video settings wheel to speed up online tutorials