A few years ago I visited a university (very likely an US university) lecture website that teaches perhaps file system or version control system (I'm really unsure here), which gradually lead students to build a simplified git. Can someone who has seen something similar tell me what lecture is it?

(I have been searching using varied keywords but got nothing.)

  • $\begingroup$ This? freecodecamp.org/news/boost-programming-skills-read-git-code/… $\endgroup$
    – Rusi
    Apr 29, 2021 at 2:38
  • $\begingroup$ @Rusi no, I remember it was an university lecture. $\endgroup$
    – Rahn
    Apr 29, 2021 at 8:05
  • $\begingroup$ IIRC, CMU does a big git-creation lab, though I can't find any links. ("git" is such a popular search term!) $\endgroup$
    – Ben I.
    Apr 30, 2021 at 12:31
  • $\begingroup$ Not a university lecture, but build your own git has a handful of useful resources. $\endgroup$
    – ggorlen
    May 22, 2021 at 20:21
  • $\begingroup$ I am guessing that you are asking about the beautifully elegant internals of git, not the ugly user interface. $\endgroup$ May 28, 2021 at 15:23

1 Answer 1


I think you are looking for retroactive data structures.

These are used with Git (ref)

The MIT Open Courseware for Advanced Data Structures by Prof. Erik Demaine teaches this in Session 2: Retroactive Data Structures


  • $\begingroup$ From the description on that wikipedia page (and from the article you linked to as well), it sounds like git uses persistent data structures rather than retroactive. Github at least uses blobs, which are immutable. $\endgroup$
    – Ben I.
    Sep 27, 2021 at 17:34
  • $\begingroup$ @BenI. While I am not Git Jedi I do recall that deep down in Git one can retroactively change a commit, thus retroactive instead of persistent. I don't have the time at present to research this but the 8-ball says sounds reasonable $\endgroup$
    – Guy Coder
    Oct 1, 2021 at 12:05
  • $\begingroup$ No, no, I mean that the reference you linked to states outright that it's persistent. $\endgroup$
    – Ben I.
    Oct 3, 2021 at 14:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.