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

Re: Feature request: rebase -i inside of rebase -i

From
GSGeorge Spelvin <lkml@sdf.org>
Date
Apr 4, 2020, 17:41 UTC
Message-ID
<20200404174116.GB11944@SDF.ORG>
In-Reply-To
<nycvar.QRO.7.76.6.2004041417420.46@tvgsbejvaqbjf.bet>

I'm just trying to make the point that guardrails on "git rebase --nested" which don't exist on the more powerful and dangerous "git rebase --edit-todo" are a case of installing a high-security lock on a screen door.

If you can come up with something that works for both, then great. But going to significant trouble (especially in terms of design complexity and legacy burden; I'm not worrying about SMOP) for a special-case solution that only works for one is a waste of effort.

Both, or neither.  Just one is bad design.
Regarding the semantics, consider the following case:
* Initial branch history is O-A-B-C-D
* I initially "git rebase A"
* Then realize that I made a mistake and "git rebase --nested A^"
* I reverse the order of the commits to D-C-B-A
* The rebase continues, and I successfully pick D and C.
   (remaining commands are "pick B" and "pick A"
* Then I "git rebase --abort".
What state should I expect to be returned to?

(Without separately abortable nested rebases, the state after the nested rebase is exactly the same as if I'd used "git rebase A^" in the first place, which doesn't seem like a terribly bad thing.)

Previous: Johannes SchindelinNext: Sebastien Bruckert
Message 17 of 25 in “Feature request: rebase -i inside of rebase -i”
  1. George SpelvinMar 20, 2020
  2. Junio C HamanoMar 20, 2020
  3. George SpelvinMar 20, 2020
  4. Johannes SchindelinMar 21, 2020
  5. George SpelvinMar 21, 2020
  6. Johannes SchindelinMar 25, 2020
  7. George SpelvinMar 26, 2020
  8. Johannes SchindelinMar 28, 2020
  9. George SpelvinMar 28, 2020
  10. George SpelvinMar 31, 2020
  11. Philip OakleyMar 31, 2020
  12. Phillip WoodMar 31, 2020
  13. Philip OakleyApr 1, 2020
  14. Phillip WoodApr 7, 2020
  15. Johannes SchindelinApr 4, 2020
  16. Johannes SchindelinApr 4, 2020
  17. George SpelvinApr 4, 2020
  18. Sebastien BruckertApr 6, 2020
  19. George SpelvinApr 6, 2020
  20. Sebastien BruckertApr 7, 2020
  21. George SpelvinApr 7, 2020
  22. Philip OakleyMar 30, 2020
  23. George SpelvinMar 30, 2020
  24. Philip OakleyMar 30, 2020
  25. Johannes SixtMar 21, 2020

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.