Jay Taylor's notes

back to listing index

Show HN: ugit – Learn Git Internals by Building Git in Python | Hacker News

[web search]
Original source (news.ycombinator.com)
Tags: git git-internals first-principles news.ycombinator.com
Clipped on: 2020-09-18

Image (Asset 1/2) alt=

Image (Asset 2/2) alt=
Polished presentation! I like to learn from first principles, so this is perfect.

There is also write you a git: https://wyag.thb.lt/

I definitely agree that having a good understanding of git's internals is a must for using it to its full potential. I'm not sure you have to go as far as implementing it yourself, but it is a sure fire way to get there. For me it didn't all click into place until I understood the data model behind git[1]. A git project is just one big DAG of objects, and each object at its core is either a blob, a tree, or a commit. When you understand that, you can start to view every git command for what they actually are, a sequence of operations on this data structure.

[1] relevant xkcd: https://xkcd.com/1597/

Looks great! I'm wondering if there are other tutorials like this but for Ruby?

Applications are open for YC Winter 2021

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact