Skip to content

Latest commit

 

History

History
36 lines (23 loc) · 916 Bytes

File metadata and controls

36 lines (23 loc) · 916 Bytes

Basic Git Implementation

A small Git implementation that's capable of initializing a repository, creating commits and cloning a public repository.

Inspiration

Inspired by codecrafters.

Dependencies

Tested with Python 3.9+

Testing locally

The run.sh script is expected to operate on the .git folder inside the current working directory. If you're running this inside the root of this repository, you might end up accidentally damaging your repository's .git folder.

We suggest executing run.sh in a different folder when testing locally.

For example:

mkdir -p /tmp/testing && cd /tmp/testing
/path/to/your/repo/run.sh init

To make this easier to type out, you could add a shell alias:

alias mygit=/path/to/your/repo/your_program.sh

mkdir -p /tmp/testing && cd /tmp/testing
mygit init