Skip to content

khaled-dev123/wyag-lite

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

14 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸŒ€ Wyag Lite

A minimal Git reimplementation in Python


πŸ“Œ Overview

Wyag Lite (Write Yourself A Git - Lite) is a simplified reimplementation of Git written entirely in Python.
It’s designed as an educational project to help developers understand the internal mechanics of Git:
repositories, objects, commits, trees, and more β€” by rebuilding them from scratch.


✨ Features

  • πŸ“‚ Initialize a new repository (wyag init)
  • πŸ“ Add and commit files (Work in Progress)
  • πŸ” Inspect objects (cat-file, ls-tree, etc.)
  • 🏷️ Manage refs and tags
  • βœ… Basic status and log commands

🎯 Goals

  • Learn Git internals by coding them step by step

  • Provide a reference for students & enthusiasts

  • Create a playground for experimenting with version control

🀝 Contributing

Contributions, issues, and pull requests are welcome! If you’re also studying Git internals, feel free to fork and extend the project.

πŸ“œ License

MIT License – free to use, modify, and distribute.


πŸš€ Getting Started

πŸ”§ Requirements

  • Python 3.10+
  • No external libraries (only Python standard library)

▢️ Usage

Clone the repository and run the wyag.py script:

git clone https://github.com/khaled-dev123/wyag-lite.git
cd wyag-lite


# Initialize a new repository
python3 wyag.py init myrepo

About

A minimal Git reimplementation in Python, inspired by "Write Yourself a Git". Educational project to learn how Git works under the hood.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages