Live data from Hacker News

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

leshenko.net

11–20 of 31 posts

Re: Show HN: ugit – Learn Git Internals by Building Git in Python

#11

Looks neat! This reminds me heavily of the excellent Building Git by James Coglan[1]. From a cursory glance though, it doesn't seem to support reading packfiles. This was the big thing that prevented me from using a fully custom Git implementation when I wrote my git churn calculator[2]. For larger repositories, it seems that almost all files are stored in packfiles, rather than the conceptually simpler "loose" forma…

Seconding the recommendation for "Building Git", one of the most lucid and edifying books I've read in recent years.

Re: Show HN: ugit – Learn Git Internals by Building Git in Python

#14

Is this tutorial interface (navigation, diffs, files/downloads at each step) custom made? It's pretty nice for this kind of format.

I was wondering the same, this format feels extremely intuitive for the material it explores. Looking at the HTML and the CSS class names I'd assume it was handmade, but it seems like standardizing this format or even generating this webpage format from a repo would be a useful tool. The comment left at the end is ambiguous as to whether it refers to the tutorial or the website as a whole.

Re: Show HN: ugit – Learn Git Internals by Building Git in Python

#15

This strikes me as a cool and polished version of shit, the Git implementation Drew DeVault did in pure POSIX shell. https://git.sr.ht/~sircmpwn/shit

Upvote for amusement. And from the link:

“How to Use: 1. Don’t”

LOL. Thanks! Both interesting!

Re: Show HN: ugit – Learn Git Internals by Building Git in Python

#16
This is great, I appreciate the effort that has gone into it.

I have used git now for about 10 years, always via cli so I am pretty fluent with it and understand intuitively what is going on behind the scenes, but have only rarely needed to venture into the .git folders.

Working through the steps in this tutorial is helping to give a foundation to that intuition. I love the presentation format and would like to see more like this, and in other languages.

Is the tutorial itself available on github or elsewhere?

Re: Show HN: ugit – Learn Git Internals by Building Git in Python

#17
> The real Git code is too complicated to be useful for learning basic concepts with ease. ... It deals with a lot of edge cases that we don't care about for learning.

Good choice, well explained. More than a toy problem space but stripped of factors that obscure the lesson. The author knows what they are doing.

Re: Show HN: ugit – Learn Git Internals by Building Git in Python

#18
post #16

This is great, I appreciate the effort that has gone into it. I have used git now for about 10 years, always via cli so I am pretty fluent with it and understand intuitively what is going on behind the scenes, but have only rarely needed to venture into the .git folders. Working through the steps in this tutorial is helping to give a foundation to that intuition. I love the presentation format and would like to see m…

I'm happy to hear that! You can clone the tutorial content using the link in the "Download" section. The interface isn't available yet on Github.

Re: Show HN: ugit – Learn Git Internals by Building Git in Python

#19

Is this tutorial interface (navigation, diffs, files/downloads at each step) custom made? It's pretty nice for this kind of format.

It was custom made for the tutorial. I didn't release it yet because I mostly focused on polishing the tutorial itself and not the code for the interface. Do you think people would be interested in the interface by itself?
Post reply on HN