git/list[1] front-page[2] threads[3] people[4] search[5] about
 

RFT: rebase--helper

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Apr 20, 2016, 07:29 UTC
Message-ID
<alpine.DEB.2.20.1604191813310.2826@virtualbox>
Hi all,

some of you are already aware that I was working on speeding up the interactive rebase by slowly moving the performance-critical parts into a builtin helper (unfortunately, we missed the boat long time ago when it would still have been feasible to convert the entire rebase family into builtins and to reasonably hope for a bug-free conversion).

Well, now I am at a point where I am reasonably certain that I have something worth testing, and I would like to solicit help by others now. So if you know how to write good bug reports and are not worried about spending a bit of time to help move this project forward, I would be really glad if you gave it a whirl with your typical rebase -i scenarios.

Here is an installer of Git for Windows with the rebase-helper:
	https://github.com/dscho/git/releases/tag/rebase-helper-v0

For non-Windows users, please pick up my 'interactive-rebase' branch from https://github.com/dscho/git/ (and no, this topic branch is not in its final shape, and I will break it down into more digestable patch series before submitting)

Known issues:
- exec commands do not report the command about to be run
- when pick'ing an already-applied patch, the last line of the error
  message does not quote the commit we tried to pick
- it chokes on lines in the todo script with leading white-space
(The last problem is already solved in my topic branch.)

And finally a note for everybody who got this far: expect `git rebase -i` to be *slower* with this version, not faster. The reason is that it will run the rebase *twice*, once with the old shell script version, and then using the rebase--helper, and then it cross-validates the results. That also means that you need to resolve merge conflicts twice, reword twice, and make sure that any "exec" commands are safe to be run twice (oh, and GIT_NOTES_REWRITE_MODE=concatenate will also wreak havoc, of course).

Thank y'all in advance, Johannes

Message 1 of 1 in “RFT: rebase--helper”
  1. Johannes SchindelinApr 20, 2016

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.