git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH RFC v3 2/2] Move libgit.a sources into separate "lib/" directory

From
Junio C Hamano <gitster@pobox.com>
Date
Jul 20, 2026, 22:14 UTC
Message-ID
<xmqqjyqpb96n.fsf@gitster.g>
In-Reply-To
<2d455ecf-972e-e3ce-54bc-683050c04282@gmx.de>
Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
Show 9 quoted lines
>> > My own (obviously subjective and biased) take is that the tradeoff is
>> > worth it, as these issues are a one-time cost while the benefits to
>> > discoverability will be permanent.
>> 
>> It is not a one-time cost, but will be an ongoing burden.
>
> It is maybe drawn-out, but it is a one-time cost. It's not like we're
> going to mass-rename source files to move them to `lib/` every two weeks
> from now on.

Since the topic was posted, I have dealt with the fallout from it at least twice a day (which, when we are lucky, is not a huge time sink, as I have mostly automated it by now), and again every time a new topic is posted that touches the moved files in substantial ways or adds new files that ought to be moved. The latter is the most time-consuming to handle. This will continue until all contemporary topics, as well as the topic in question, graduate.

If that is not an ongoing burden, I do not know what is.
> And this statement neglects to acknowledge that the lack of clean
> organization of source code files is an ongoing burden _right now_, and
> would be at least partially addressed by the move.

At least, Gábor does not seem to think that the lack of clean organization is so severe as to warrant a massive code churn like this.

I value stability much more than prettiness. If we had started out with almost nothing at the root level and almost everything in either 'lib' or 'builtin', I would have strongly preferred to keep that structure. But since we have been using a layout that has all built-in commands in 'builtin', with subsystems like 'refs' and 'odb' in their own directories, and everything else at the root level, I would prefer to keep that organization until a substantial subsystem update wants to carve out a new location for itself, just as past updates to create 'builtin', 'refs', and 'odb' did.

Compared to those past moves, the proposed change looks more like churn for the sake of moving things around, without achieving any real organizational improvement.

I must say that I, too, remain skeptical.
Previous: Johannes SchindelinNext: Patrick Steinhardt
Message 6 of 18 in “Move libgit.a sources into separate "lib/" directory”
  1. 0/2 Move libgit.a sources into separate "lib/" directoryPatrick Steinhardt, Jul 1, 2026
  2. 1/2 t/helper: prepare "test-example-tap.c" for introduction of "lib/"Patrick Steinhardt, Jul 1, 2026
  3. 2/2 Move libgit.a sources into separate "lib/" directoryPatrick Steinhardt, Jul 1, 2026
  4. SZEDER GáborJul 13, 2026
  5. Johannes SchindelinJul 20, 2026
  6. Junio C HamanoJul 20, 2026
  7. Patrick SteinhardtAug 11, 2026
  8. Junio C HamanoAug 11, 2026
  9. Patrick SteinhardtAug 11, 2026
  10. Johannes SchindelinAug 13, 2026
  11. Junio C HamanoAug 13, 2026
  12. Michael MontalboAug 13, 2026
  13. Michael MontalboAug 14, 2026
  14. Junio C HamanoAug 17, 2026
  15. brian m. carlsonJul 20, 2026
  16. Junio C HamanoJul 20, 2026
  17. Taylor BlauJul 20, 2026
  18. Patrick SteinhardtAug 11, 2026

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.