# Why Version Control Exists: The Pendrive Problem

Before I ever heard words like *Git* or *version control*, I was already doing version control — just in the worst possible way.

It involved pendrives, email attachments, and folders named things like:

project\_final  
project\_final\_v2  
project\_final\_latest  
project\_final\_latest\_fixed

If this looks familiar, you already understand why version control exists.

## When Pendrives Were Our “System”

In the beginning, sharing code was simple. You write some code, copy it to a pendrive, and give it to your friend. Or zip it and send it over email or WhatsApp.

At first, this works.

The problem starts when **more than one person** touches the same project.

I make some changes.  
My friend makes different changes.  
Now we both have “the latest version”.

Which one is actually latest?

![Colored Aluminum USB Flash Drive 2.0 3.0 4GB 8GB 16GB Pendrive 64GB 128GB  32GB](https://image.made-in-china.com/2f0j00lUeMoEHdYakg/Colored-Aluminum-USB-Flash-Drive-2-0-3-0-4GB-8GB-16GB-Pendrive-64GB-128GB-32GB.jpg align="left")

### 1\. Accidentally Overwriting Good Code

One small mistake and someone’s work is gone.

You copy a file thinking it’s updated, and boom — you just erased two hours of someone else’s effort.

There’s no warning.  
No confirmation.  
No way back.

---

### 2\. Lost Code Is Lost Forever

There was no history.

If you deleted a few lines yesterday and realised today that they were important, you were done. The only backup was **your memory** — and that’s not reliable.

---

### 3\. The “Final” Folder Lie

Every project eventually had this structure:

final  
final\_v2  
final\_v2\_new  
final\_latest  
final\_latest\_working

And still, nobody was confident which one was actually running.

![https://pbs.twimg.com/media/EwXgfWsXAAUOnRO.jpg](https://pbs.twimg.com/media/EwXgfWsXAAUOnRO.jpg align="left")

### 4\. Multiple People, Same File, Big Mess

This was the worst part.

Two people editing the same file at the same time meant:

* Copy-pasting code manually
    
* Missing small changes
    
* Introducing bugs without knowing it
    

Merging code felt more dangerous than writing it.

## Now Imagine This at Company Scale

All of this was painful even with **2 people**.

Now imagine:

* 20 developers
    
* Working from different places
    
* Pushing changes every day
    

Pendrives and emails were never going to survive this.

Teams needed:

* One common place for code
    
* A clear history of changes
    
* A way to undo mistakes
    
* A safe way to work together
    

This is where version control stopped being optional.

---

## How Version Control Fixed Everything

Version control systems changed one simple thing:

**Instead of sharing files, we share changes.**

Now:

* Every change is recorded
    
* Every mistake can be undone
    
* Multiple people can work safely
    
* Nothing gets overwritten silently
    
* ![https://nvie.com/img/git-model%402x.png](https://nvie.com/img/git-model%402x.png align="left")
    
    ## Why Version Control Is Mandatory Today
    
    Modern software changes too fast for manual methods.
    
    Bugs happen.  
    People make mistakes.  
    Requirements change.
    
    Version control doesn’t prevent mistakes —  
    it **makes mistakes safe**.
