Git Part I — The Basics
An insult to British people, but also a system of file version control
Stop me if you’ve heard this one before: contrary to popular belief, Git and GitHub are not one and the same. There, now that’s out of the way. Photo by Luke Chesser on Unsplash.
Coding is an act of creation. Creation at its most marvelous, more often than not, is the result of iteration, collaboration, and people saying pointed Words to each other.
And tracking that kind of is stuff messy.
Tools like Git mean to keep the mess to a minimum while people improve their projects and work together.
Git: The Nutshell
Git is what is called a “version-control system”: it aims to regulate how files are altered, and by whom, over time. But since people who code and what they code is vast and sprawling, Git tracks these changes made in a “distributed, non-linear” way.
That means you don’t have to wait for Joe Programmer across the hall (or the world) to finish making changes to a project before you contribute to it. Using branches, commits, and comparative algorithms, Git lets code jockeys split off, merge, and clone projects to create a (eventual and hopeful) better whole.
Likewise, even if you are a Team of Three (me, myself, and I), with Git you can accurately track and maintain discrete versions of the same project.
GitHub: The Clarification
GitHub is a web hosting service and repository built around Git. GitHub uses software to wrap Git in a friendly UI that facilitates online collaboration and eases onboarding of its use. GitHub is not the only of its kind, but it certainly is the current Big Dog of internet collaboration.
Due to its prominence in the digital space, GitHub occasionally can get confused with Git itself. Where Git is the protocol, the language, and the methodology of this type of distributed version control, GitHub is a really shiny and polished package that makes Git more accessible.
Although still primarily for software development, users of GitHub can store and keep track of files for almost any sort of project, like a community-made recipe book, design iterations for a company logo, or those fifty-thousand pictures of your oldest child.
It can store pictures of your younger children, too. That is, if you can find any.