A smaller version of a working Git version control system called gitlet that implements working init, add, commit, branch, merge etc. functions.
For more information on each of the command that gitlet implements, read here: https://inst.eecs.berkeley.edu/~cs61b/sp22/materials/proj/proj3/proj3.html