Why GIT Exists: The Pendrive Problem

Published: (January 31, 2026 at 03:41 PM EST)
2 min read
Source: Dev.to

Source: Dev.to

The Pendrive Problem

Imagine a world without Git:

  1. You need a new feature, so you ask a friend, Rishi, to help.
  2. You zip the whole project, copy it to a pendrive, and hand it over.
  3. Rishi develops the feature, zips the updated code, and returns the pendrive.

When you unzip the project you face several issues:

  • No visibility of authorship – you can’t tell which parts were written by whom.
  • Unclear changes – a bug appears later, and you have no idea what changed or where.
  • Time‑consuming reviews – you must sit down with Rishi and compare files line‑by‑line.
  • Conflicts and wasted effort – fixes may unintentionally modify or delete important code, forcing you to debug the entire project again.

If multiple developers need to work on the same codebase, the situation worsens:

  • Every change requires zipping the whole project and moving the pendrive.
  • Only one person can work at a time—the one who holds the pendrive.
  • Tracking which files were modified and by whom is practically impossible.

What Developers Needed

Tracking Changes

A system that can:

  • Record every change made to the code.
  • Store the author of each change.
  • Show differences (diffs) between old and new versions.
  • Maintain a complete version history.

Enabling Collaboration

  • A single source of truth that multiple developers can access simultaneously.
  • The ability to pull the latest code, work independently, and push changes back.
  • Immediate visibility of others’ contributions without manual file exchanges.

The Birth of Git

Linus Torvalds created Git to manage the rapidly growing Linux kernel. As the project expanded, traditional methods of tracking changes became untenable. Git introduced a distributed version‑control system (DVCS) that solved both tracking and collaboration problems.

  • Distributed – every developer has a full copy of the repository, eliminating a single point of failure.
  • Fast – operations like committing, branching, and merging are performed locally.
  • Reliable – cryptographic hashing ensures data integrity.

GitHub (and similar hosted services) provides a central server where repositories can be stored, making it easy for developers to share and collaborate.

Alternatives to GitHub

While GitHub is the most popular hosted Git service, several alternatives exist:

  • Bitbucket
  • GitLab
  • Gitea
  • Codeberg

Other Version‑Control Systems

Before Git became dominant, other VCS tools were used:

  • AWS CodeCommit
  • Apache Subversion (SVN)
  • Unity Version Control
  • Fossil
  • Concurrent Versions System (CVS)

Conclusion & What’s Next

Git emerged to solve the “pendrive problem” and the broader challenges of tracking changes and enabling collaboration. Understanding this history helps appreciate Git’s power in modern software development.

In the next article we’ll dive into how Git works internally, explore its core concepts, and examine the folder structure of the .git directory to see what happens behind the scenes.

Back to Blog

Related posts

Read more »

A beginners guide to Git and Github

Definition of Git and GitHub These two terms may seem familiar to someone new, but they are not the same. - Git – a free, open‑source tool used for tracking ch...