Re: [PATCH RFC v2 2/2] Move libgit.a sources into separate "lib/" directory
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jun 22, 2026, 13:08 UTC
- Message-ID
- <xmqqcxxi3eov.fsf@gitster.g>
- In-Reply-To
- <20260622-pks-libgit-in-subdir-v2-2-cb946c51ee7b@pks.im>
Patrick Steinhardt <ps@pks.im> writes:
Show 10 quoted lines
> The Git project is not exactly the easiest project to get started in: > it's written in C and POSIX shell, with bits of Perl, Rust and other > languages sprinkled into it. On top of that, the project has grown > somewhat organically over time, making the codebase hard to navigate. > > But there is a rather practical problem: finding your way around in our > project's tree is not easy. Doing a directory listing in the top-level > directory will present you with more than 550 files, which makes it > extremely hard for a newcomer to figure out what files they are even > supposed to look at.
Well, many things already live in the dedicated corner of their own universe, like tests in t/, builtins in builtins/, and documentation in Documentation/. This is pretty much moving everything else in a single directory lib/. Surely there are things like top-level Makefile and other build- and ci-related things that do not move to lib/ for obvious reasons, but I view this move essentially to change "for core-ish and library-ish things, look at the top level directory" to "for core-ish and library-ish things look at lib/ directory".
Would that make it easier to navigate? I am not sure. What I am sure is that this will force many in-flight topic (and soon to be in-flight because people are holding them back during the prerelease freeze period) to be updated, and it will make it harder to make fixes that can apply both to 2.55 and before and newer codebase.
So, my initial reaction is somewhat negative, but I am known to accept changes that I myself do not necessarily agree with, so...