Back to Projects
Version Control System

Version Control System

2026-06
Python Data Structures Cryptography

Re-inventing the Wheel

Everyone uses Git, but how many truly understand how it works under the hood? I decided to find out by building a distributed version control system from scratch in Python.

Core Architecture

This isn't a wrapper around Git—it's a fundamental implementation of version control algorithms:

  • **Directed Acyclic Graph (DAG)**: The commit history is structured as a robust DAG, allowing for complex branching and merging scenarios.
  • **Merkle Trees**: Implemented cryptographic Merkle Trees to track file changes and ensure the integrity of the file system at any given commit. If a single byte is tampered with, the hash mismatch immediately exposes it.
  • **Object Storage**: Designed an efficient blob-based object storage system to deduplicate file data across multiple commits, minimizing disk footprint.
  • Key Features

  • `init`, `add`, `commit` workflows mimicking standard VCS behavior.
  • Branch creation and traversal.
  • Hashing-based integrity checks for corruption detection.
  • Why I Built It

    This project was a deep dive into **Applied Cryptography** and **Advanced Data Structures**. It drastically improved my understanding of how modern file systems and version control tools ensure data integrity at scale.

    WEBRINGS
    CATPPUCCIN
    PREV INDEX NEXT