Hi Dennis, On Fri, 2 Sep 2016, Dennis Kaarsemaker wrote: > On vr, 2016-09-02 at 18:23 +0200, Johannes Schindelin wrote: > > This is crucial to improve performance on Windows, as the speed is now > > mostly dominated by the SHA-1 transformation (because it spawns a new > > rev-parse process for *every* line, and spawning processes is pretty > > slow from Git for Windows' MSYS2 Bash). > > I see these functions only used as part of an shorten-edit-expand > sequence. Why not do a git rebase-helper --edit-todo instead? Saves > another few process spawnings. It would make sense to consolidate the steps, yes. I just tried to be careful in my incremental approach and am fairly certain about the current revision faithfully replicating the previous behavior. > Something for yet another later followup patch? Sure. Probably more than one patch, though: I could imagine that a minor refactoring would allow us to read in the todo script once, then apply the individual processing steps in-memory, and then write out the new todo script. And then we can implement an --edit-todo with an optional --initial flag that triggers the check for validity and the rearranging of the fixup/squash commands (when the user calls `git rebase --edit-todo`, neither of those steps should be run). Maybe you will want to have a look into that while I am mostly offline? Ciao, Dscho