On Fri, Jun 3, 2022, at 8:53 PM Konstantin Khomoutov <kostix@xxxxxxxx> wrote: > Well, depends on what you mean when talking about the two mentioned designs. > I mean, there's the design of the approach to manage data and there's the > design of the software package (which Git is). That's a good perspective on the distinction between the designs. I am not familiar yet, with the design of GIT as a software package, and I am guessing most people who'll be learning about GIT internals won't be. > If you do also understand the latter - that is, understanding that Git is an > assortment of CLI tools combined into two layers called "plumbing" and > "porcelain", - then you should have no difficulty starting to read the code: > basically locate the source code of the entry point Git binary (which is, > well, "git", or "git.exe" on Windows) and start reading it. How do I do that? What do you mean by the "entry point" of the git binary?