Hi Liam, On Tue, 2 May 2017, Liam Beguin wrote: > On Tue, 2017-05-02 at 17:48 +0200, Johannes Schindelin wrote: > > > I offered a couple of comments, my biggest one probably being that > > this patch series is crossing paths with my patch series that tries to > > move more functionality out of the git-rebase--interactive.sh script > > into the git-rebase--helper that is written in C, closely followed by > > my suggestion to fold at least part of the functionality into the > > SHA-1 collapsing/expanding. > > I've seen a few messages about this migration, but I'm not yet sure I > understand the difference between the shell and the C implementations. > Is the C version going to replace 'git-rebase--interactive.sh'? The C version has already started to replace the shell script, yes. In adding and using git-rebase--helper, there are already parts of the interactive rebase functionality that are run using C code only. The idea is to move more and more functionality over (separating out the --preserve-merges handling into a different shell script, as I have no plans to convert that code to C, and as far as I can see nobody else wants to step up to that task, either). Eventually, we may be able to finish that gigantic task of having git-rebase be all builtin C code. > > If your patch series "wins", I can easily forward-port your changes to > > the rebase-i-extra branch, but it may actually make sense to build on > > top of the rebase-i-extra branch to begin with. If you agree: I pushed > > the proposed change to the `rebase-i-extra+abbrev` branch at > > https://github.com/dscho/git. > > If 'git-rebase--interactive.sh' is bound to be replaced, I could > just shrink this to the Documentation cleanup (patches 4 and 5) > and rework the rest on top of your new implementation. I kind of hoped that Junio would chime in with his verdict. That would be the ultimate deciding factor, I think. Ciao, Johannes