On Wed, 21 Sep 2016, Junio C Hamano wrote:
> Johannes Schindelin <johannes.schinde...@gmx.de> writes:
> >> * jk/rebase-i-drop-ident-check (2016-07-29) 1 commit
> >> (merged to 'next' on 2016-08-14 at 6891bcd)
> >> + rebase-interactive: drop early check for valid ident
> >> Even when "git pull --rebase=preserve" (and the underlying "git
> >> rebase --preserve") can complete without creating any new commit
> >> (i.e. fast-forwards), it still insisted on having a usable ident
> >> information (read: user.email is set correctly), which was less
> >> than nice. As the underlying commands used inside "git rebase"
> >> would fail with a more meaningful error message and advice text
> >> when the bogus ident matters, this extra check was removed.
> >> Will hold to see if people scream.
> >> cf. <20160729224944.ga23...@sigill.intra.peff.net>
> > Let's do this.
> We have already been doing it (i.e. "hold to see if people scream")
> for some time.
I meant: let's merge this to `master`.
> Does it conflict with your effort to reimplement "rebase -i" in C
I do not think so.
> to keep this in 'next'? Do you want it to move to 'master'? I was
> under the impression that it would not make a difference to have or not
> have this patch once your reimplementation gets merged (meaning: the
> removal of the three lines will be done by wholesale removal of
> git-rebase--interactive.sh done the endgame of your series), so...
Oh, I failed to make clear that my patch series do *not* remove
git-rebase--interactive.sh. I just barely started to work to that end.
While the speed improvements are quite noticable, the rebase--helper
command still only implements the performance-critical code paths in C.
There is quite a bit of work left to do before git-rebase--interactive.sh
can be retired:
- --root is not handled via the sequencer yet,
- --preserve-merges is not handled either [*1*],
- the shell script still sets up the state directory,
- option parsing is still all-shell,
- probably more tasks I forgot.
The good news is that these parts can be converted independently from each
other, and even by independent developers (hint, hint ;-)).
Footnote *1*: I am not sure that I want to port -p to C: in my view, this
is a failed experiment, to be replaced with a design based on my Git
garden shears. I tend to think that that part should be moved to a new
shell script ("git-rebase--preserve-merges.sh"?) unless some developer
other than me feels strongly enough to put their money where their mouth
is and teach the sequencer about it.