Anyone who has ever kept files named project_final.docx, project_final_v2.docx, and project_final_v2_ACTUAL.docx has already felt the exact problem version control solves — tracking how a project changes over time, without losing anything or guessing which copy is current.
| Without version control | With version control |
|---|---|
| Multiple copies of a file, manually renamed | One file, a complete history of every change to it |
| No record of who changed what, or why | Every change is logged with an author, a timestamp, and a message |
| Undoing a mistake means finding an old copy, if one still exists | Undoing a mistake means checking out an earlier version — always possible |
| Two people editing the same file overwrite each other | Changes from multiple people merge together, with conflicts flagged explicitly |
Early tools (like SVN and CVS) tracked changes with everyone working against one central copy — every action needed the network. Git, created by Linus Torvalds in 2005 to manage the Linux kernel's source code, is distributed instead: every developer has a complete copy of the project's full history on their own machine, and only needs the network to actually share changes with others.
These two names get used interchangeably, but they're different things. Git is the version control tool itself — it runs entirely on a local machine and has no concept of "the internet" built in. GitHub is a website that hosts Git repositories online and adds collaboration features (pull requests, issues, code review) on top — covered starting a few lessons ahead. GitLab and Bitbucket, covered in the last lesson of this course, do the same job as GitHub with a different company behind them.
Every other course on this site assumes a project eventually gets deployed, shared, or worked on with someone else — Git is the tool that actually makes that possible without chaos. It's also, in practice, one of the first things a coding interview or a job's day-one setup assumes a developer already knows.
What "other version control softwares" means in this course
This course covers Git and GitHub in real depth, then closes with a lesson comparing GitHub to other hosting platforms (GitLab, Bitbucket) and other version control systems entirely (Mercurial, Subversion, Perforce) — Git is overwhelmingly the industry standard today, but it's worth knowing what else exists and why.