Re: [PATCH] contrib/subtree: ensure only one rev is provided
- Date: Thu, 7 Feb 2019 17:34:38 -0500
- From: Avery Pennarun <apenwarr@xxxxxxxxx>
- Subject: Re: [PATCH] contrib/subtree: ensure only one rev is provided
]0;joe - On Thu, Feb 7, 2019 at 1:54 PM Junio C Hamano
> I am not sure if the other caller is OK, though. cmd_add_repository
> can get more than one revs, and uses the first one as $rev to read
> the tree from, expecting that this helper to ignore other ones that
> are emitted from 'git rev-parse --revs-only "$@"'.
> For that matter, one of the early things cmd_split does is to call
> the find_existing_splits helper with $revs, and it seems to be
> prepared to be red multiple $revs (it is passed to "git log", so I
> would expect that incoming $revs is allowed to specify bottom to
> limit the traversal, e.g. "git log maint..master"). The addition of
> "ensure_single_rev" we saw in an earlier hunk near ll.191 makes such
> call impossible. I am not a user of subtree, so I do not know if
> it is a good change (i.e. making something nonsensical impossible to
> do is good, making something useful impossible to do is bad).
I think this generality is probably not useful and it will probably confuse
people less if we prevent it. It was just one of those "if you don't have
any better ideas, just let people do whatever complicated thing they want"
approaches I used when I was first writing it and didn't know how people
would end up using it.
> In any case, I do not use subtree, and the last time I looked at
> this script is a long time ago, so take all of the above with a
> large grain of salt.
I don't use it very often either. To be honest, I've noticed weird
behaviour in the version installed with git 2.11.0 in Debian, so I went back
to my own version at https://github.com/apenwarr/git-subtree. I've been
meaning to investigate further to see what patch might have happened that
caused it to act weird; maybe it's since been fixed.
But I don't see any major problems with the patch in this thread.