3 ms·
Anyone knows of similar projects in another languages? I've been wanting to understand some important tools (like git in this case) and also learn some language
by iheredia 5y ago
Anyone knows of similar projects in another languages? I've been wanting to understand some important tools (like git in this case) and also learn some languages I've been pushing back. Would love to find more of these
- rohitpaulk 5y agoThere's a long list here: https://github.com/danistefanovic/build-your-own-x https://github.com/danistefanovic/build-your-own-x. Also, https://codecrafters.io/challenges/git https://codecrafters.io/challenges/git supports multiple languages (I'm the author). Many folks that try this challenge do it for the same reason you mentioned: to learn about a tool and learn a new language at the same time.
- sc4ramouche 5y agoI was thinking the same and found the book that teaches to build Git in Ruby, although I haven’t checked it out yet: https://shop.jcoglan.com/building-git/ https://shop.jcoglan.com/building-git/
- iudqnolq 5y agoI followed along to that book in Rust and found it excellent.
- egeozcan 5y agoExactly, Typescript or C# would have been very nice. edit: found some for JS, not TS but still something: http://gitlet.maryrosecook.com/docs/gitlet.html http://gitlet.maryrosecook.com/docs/gitlet.html https://kushagra.dev/blog/build-git-learn-git/ https://kushagra.dev/blog/build-git-learn-git/
- turminal 5y agoThere's https://git.sr.ht/~sircmpwn/shit https://git.sr.ht/~sircmpwn/shit, written in posix sh. It doesn't implement any of the porcelain though.
- ori_b 5y agoThe OpenBSD people are working on Game of Trees: http://gameoftrees.org/ http://gameoftrees.org/ And I wrote the one that 9front uses, which is self hosting (client, server, and web ui all run off it): http://shithub.us/ori/git9/HEAD/f.html http://shithub.us/ori/git9/HEAD/f.html
- JoshTriplett 5y agoFor Rust, see https://github.com/Byron/gitoxide https://github.com/Byron/gitoxide , which provides both a pure Rust library and a command-line tool built atop that library.
- fiddlerwoaroof 5y agoI’ve been slowly working on implementing git in Common Lisp: https://github.com/fiddlerwoaroof/cl-git https://github.com/fiddlerwoaroof/cl-git I think I have most of the object type parsers done for loose objects and pack files, just need to finish implementing the delta ref decoding algorithm.