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

Re: [PATCH v2 0/3] contrib/subtree: reduce recursion during split

From
Junio C Hamano <gitster@pobox.com>
Date
Apr 20, 2026, 01:50 UTC
Message-ID
<xmqqa4uyv1ql.fsf@gitster.g>
In-Reply-To
<27109.13129.424068.382997@chiark.greenend.org.uk>
Ian Jackson <ijackson@chiark.greenend.org.uk> writes:
Show 12 quoted lines
> Colin Stagner writes ("Re: [PATCH v2 0/3] contrib/subtree: reduce recursion during split"):
>> That said, a native Rust version of 
>> git-subtree-split would be much faster and easier to read.
>
> I prototyped something along the lines of the algorithm I described
> earlier.  It is very fast, as expected.
>
> The output looks plausible when I look at it by eye, but there are
> some things that I need to look at more closely.  I should think some
> more about invariants and tests.
>
> Overall, I think this is worth pursuing.
;-).
> Before I go much further, how do we think this would best be packaged?
My preference is (as it has always been)
 (1) host it somewhere outside of my tree,
 (2) replace contrib/subtree/* with a single file
     contrib/subtree/README that lead people to the new location.

The preference is not limited to subtree but generally applies to things in contrib/. I prefer to see them graduate this project and stand on their own, when they do not have storng dependency on the git-core project. From technical point of view, this is especially true if your plan is to depend on libgit2, as it is not our dependency. Back when Git was very young, it did make sense to have related-but-not-quite-Git things (like gitk and git-gui) shipped to give them visibility, but we have passed that stage 15 years ago.

Thanks.
Previous: Ben KnobleNext: Ian Jackson
Message 14 of 22 in “contrib/subtree: reduce recursion during split”
  1. 0/3 contrib/subtree: reduce recursion during splitColin Stagner, Mar 5, 2026
  2. 1/3 contrib/subtree: reduce function side-effectsColin Stagner, Mar 5, 2026
  3. 2/3 contrib/subtree: functionalize split traversalColin Stagner, Mar 5, 2026
  4. 3/3 contrib/subtree: reduce recursion during splitColin Stagner, Mar 5, 2026
  5. Junio C HamanoMar 13, 2026
  6. Junio C HamanoMar 13, 2026
  7. Junio C HamanoApr 15, 2026
  8. Ben KnobleApr 15, 2026
  9. Ian JacksonApr 16, 2026
  10. Junio C HamanoApr 16, 2026
  11. Colin StagnerApr 17, 2026
  12. Ian JacksonApr 19, 2026
  13. Ben KnobleApr 20, 2026
  14. Junio C HamanoApr 20, 2026
  15. Ian JacksonApr 20, 2026
  16. Colin StagnerApr 21, 2026
  17. Johannes SchindelinApr 22, 2026
  18. git-subtree rewriteIan Jackson, Apr 22, 2026
  19. Junio C HamanoJun 1, 2026
  20. Ian JacksonJun 2, 2026
  21. Colin StagnerJun 3, 2026
  22. Ian JacksonJun 3, 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.