Git-Implementierung auf Shell vorbereitet

Drew DeVault, Autor der BenutzeroberflĂ€che Sway und des E-Mail-Clients Aerc, hat aus Spaß versucht, eine Implementierung von Git in POSIX Shell zu erstellen. Die Idee entstand nach einer Diskussion ĂŒber die KomplexitĂ€t der internen Struktur von Git, nach der Drew beschloss, seine Argumente zu demonstrieren, indem er an einem Tag eine funktionale Version von Git in reinem Shell schrieb. WĂ€hrend der Arbeit stellte Drew fest, dass er mit seinen Aussagen zur Einfachheit etwas voreilig war, da Git ein binĂ€res Indexformat verwendet, das sich nicht ganz fĂŒr Shell eignet. Aber es war zu spĂ€t zum Aufgeben, und es gelang ihm, Git in Shell umzusetzen.

Das Projekt erhielt den Namen shit (Shell Git) und wird ausschließlich als Experiment zur Untersuchung der Funktionsweise von Git positioniert, nicht zur praktischen Anwendung. Neben den im POSIX Shell definierten Konstruktionen nutzt der Code mehrere GNU-Erweiterungen, die in BusyBox funktionsfĂ€hig sind. Außerdem ist die Bibliothek zlib erforderlich. Die implementierte FunktionalitĂ€t reicht aus, um einen Commit in ein Git-Repository durchzufĂŒhren.
Code wird verbreitet unter Lizenz DWTFYWTv2.

Quelle: opennet.ru

60GB SSD 8Gb DDR4