Implementation of Git on Shell prepared

Drew DeVault, User Environment Author Sway and mail client aerc, for fun, tried to prepare a Git implementation written in POSIX Shell. The idea arose after a dispute about the complexity of Git's internal structure, after which Drew decided to demonstrate his arguments by writing a working version of Git in pure Shell in a day. As he worked, Drew realized that he had gotten a little carried away with claims of simplicity due to Git's use of a binary index format that Shell was not well suited to handle. But it was too late to retreat, and by dodging he managed to implement Git on Shell.

The project was named shit (Shell Git) and is positioned solely as an experiment in the study of the internals of Git, not intended for practical use. In addition to the constructs defined in the POSIX Shell, the code uses several GNU extensions that work in BusyBox. It also requires the zlib library to work. The prepared functionality is enough to commit to the git repository.
Code spreads under license DWTFYWTv2.

Source: opennet.ru

Add a comment