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

From: Johannes Schindelin <[email-masked]>
Date: Wed, 22 Apr 2026 11:43:29 +0200 (CEST)

Hi Colin & Ian,

On Wed, 22 Apr 2026, Colin Stagner wrote:

> On 4/20/26 04:57, Ian Jackson wrote:
> 
> > I need to think about this some more but I doubt this can be made to
> > work well without more significant changes, including to the data
> > model.  There would have to be some kind of compatibility arrangement
> > to handle existing histories.
> 
> I would take a look at the test-cases for git-subtree.sh, which document 
> some of the kinds of issues you will encounter. They may help you test 
> compatibility.
> 
> Anything you can do to limit breakage to "opt-in" points-in-time only 
> would be greatly appreciated.
> 
> > Colin, is that OK with you?
> 
> You can name it and develop it however you like. No need to ask 
> permission here.
> 
> (For the record, I'm also not the maintainer of contrib/git-subtree. 
> I've just been trying to fix a few issues with it.)
> 
> > If you would prefer, I could choose a different name for the
> > resulting program.
> 
> If I were writing it, I would give the new program a different name but 
> perhaps provide a "compile-time" way to set it to "git-subtree" instead. 
> My reason for this is that it may need to exist with the legacy script 
> for awhile, and it's good to be able to tell them apart.

I just wanted to chime in to cheer you on, I've been following this
Rust-based `git-subtree` idea with interest. You may know it already, Git
for Windows is shipping `git subtree` with its installers for ages, and
given the abysmal performance characteristics of shell-based Git commands
on Windows, it would be really good to replace the shell-scripted version
with the Rust version (also to ensure proper error handling, which is
hard to make comprehensive in Unix shell scripts).

Thank you for pushing this forward!

Ciao,
Johannes