kgit is a minimal Git implementation written from scratch in Python, based on the wyag project. This repository reimplements the core features of the Git version control system from the ground up.
The goal is to demonstrate that, despite its reputation for complexity, the core of Git is simple and elegant.
kgit implements the following core Git commands, compatible with real Git repositories:
addcat-filecheck-ignorecheckoutcommithash-objectinitlogls-filesls-treerev-parsermshow-refstatustag
Each command is a simplified version of its Git counterpart, focusing on clarity and core functionality.
-
Clone this repository:
git clone https://github.com/kareem-ghazi/kgit cd kgit -
Run kgit commands:
python3 src/kgit <command> [options]
-
Explore the code:
The main logic is insrc/kgit/libkgit.py. Each command is implemented in a clear, readable way.
This project is released under the MIT License. See LICENSE.txt for details.
