Why Version Control Exists: The Pendrive Problem

Topics to cover
Why Version Control Exists
The Pendrive Analogy in Software Development
Problems Faced Before Version Control Systems
Have you ever wondered ,what exactly is Version Control System or what are the problems it solves? if you are new to it then it is very important for a developer to have a solid understanding of git.
At its core, Git is a version control system that helps developers track changes in their code over time. But that definition alone doesn’t explain why Git exists. To understand that, we need to look at how developers managed code before version control systems.
Life Before Version Control Systems
Before tools like Git existed, managing and sharing code in a team was extremely difficult. Developers relied on very manual and error-prone methods such as:
Copying code to pendrives
Sending projects via email
Creating folders like:
project_finalproject_final_v2project_latest_final_really
Manually telling teammates what changes were made
These methods worked only for very small projects and even then, barely.
There was no reliable way to answer basic questions, such as:
What exactly changed in the code?
Who made those changes?
When were the changes made?
What was the previous working version?
As a result, teams frequently faced issues like:
Overwriting someone else’s code
Losing important changes
No history of the codebase
No clear ownership of changes
Let’s take one example to eleborate more about this problem
Here's an example using a pen drive to share code between two developers (developer-1 and developer-2).

In the above image is is showing that -
Let's say developer-1 has written some code and needs help with a feature he can't develop. So, he decides to ask developer-2 for assistance. He zips his code, puts it on a pendrive, and sends it to his friend (developer-2). Developer-2 reviews the code, adds the feature, and then needs to do the same steps again. He zips the updated code and sends it back to developer-1. The problem is, how does developer-1 know which lines developer-2 changed? He would have to ask developer-2 about the changes made in the code. and again untill they have done with there works they have to repeat this process again and again , So you can see this much dificulty is there just between the 2 developer now imagine when there are more than 2 developers then what will happen?
So , basically the problem is that we are not able to track the changes made by the developers if we somehow able to track the changes then it is very easy to manage the code. Thats why version control systems like git come into the picture.
Why Version Control Becomes Mandatory
This is exactly why Version Control Systems came into existence.
Tools like Git solve these problems by:
Automatically tracking every change
Maintaining a complete history of the project
Allowing multiple developers to work simultaneously
In modern software development, version control is mandatory for day to day use . Git didn’t become popular by chance , it became popular because it solved problems that every developer and every team inevitably faces.
Hope you enjoyed reading.