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

[PATCH 0/3] rebase --root

From
Thomas Rast <trast@student.ethz.ch>
Date
Dec 29, 2008, 16:45 UTC
Message-ID
<cover.1230568082.git.trast@student.ethz.ch>

Inspired by f95ebf7 (Allow cherry-picking root commits, 2008-07-04), this teaches git rebase to rebase everything up to the root commit(s).

The main use-case for this is if you hack on new history, then later notice that you want to unroll the commits "on" a git-svn branch to dcommit them separately. (If you just want to squash them, a merge will do fine.)

Note that --root (in both modes) requires --onto; you cannot rebase "onto nothing" to edit the root commit. Such an option --onto-nothing might be a worthwile feature however, since it would also allow "detaching" a set of commits from their parent history.

BTW, while hacking this I noticed that there are two different tests t3409:

  t3409-rebase-hook.sh
  t3409-rebase-preserve-merges.sh
Is this okay, or should one of them be renamed?
Thomas Rast (3):
  rebase: learn to rebase root commit
  rebase -i: learn to rebase root commit
  rebase: update documentation for --root
 Documentation/git-rebase.txt |   17 +++++++---
 git-rebase--interactive.sh   |   53 +++++++++++++++++++++++++--------
 git-rebase.sh                |   51 ++++++++++++++++++++++----------
 t/t3412-rebase-root.sh       |   66 ++++++++++++++++++++++++++++++++++++++++++
 4 files changed, 153 insertions(+), 34 deletions(-)
 create mode 100755 t/t3412-rebase-root.sh
Next: Thomas Rast
Message 1 of 27 in “rebase --root”
  1. 0/3 rebase --rootThomas Rast, Dec 29, 2008
  2. rebase: learn to rebase root commitThomas Rast, Dec 29, 2008
  3. rebase -i: learn to rebase root commitThomas Rast, Dec 29, 2008
  4. rebase: update documentation for --rootThomas Rast, Dec 29, 2008
  5. Thomas RastDec 29, 2008
  6. Boyd Stephen Smith Jr.Dec 29, 2008
  7. Thomas RastDec 30, 2008
  8. 1/3 rebase: learn to rebase root commitThomas Rast, Dec 30, 2008
  9. 2/3 rebase -i: learn to rebase root commitThomas Rast, Dec 30, 2008
  10. 3/3 rebase: update documentation for --rootThomas Rast, Dec 30, 2008
  11. Junio C HamanoJan 1, 2009
  12. Johannes SchindelinJan 2, 2009
  13. Thomas RastJan 2, 2009
  14. 1/4 rebase -i: execute hook only after argument checkingThomas Rast, Jan 2, 2009
  15. 2/4 rebase: learn to rebase root commitThomas Rast, Jan 2, 2009
  16. 3/4 rebase -i: learn to rebase root commitThomas Rast, Jan 2, 2009
  17. 4/4 rebase: update documentation for --rootThomas Rast, Jan 2, 2009
  18. 3/4 rebase -i: learn to rebase root commitThomas Rast, Jan 2, 2009
  19. 2/4 rebase: learn to rebase root commitThomas Rast, Jan 2, 2009
  20. Junio C HamanoJan 2, 2009
  21. rebase: learn to rebase root commitThomas Rast, Jan 2, 2009
  22. rebase: learn to rebase root commitThomas Rast, Jan 5, 2009
  23. Junio C HamanoJan 6, 2009
  24. Junio C HamanoJan 2, 2009
  25. Thomas RastJan 2, 2009
  26. Junio C HamanoJan 2, 2009
  27. Junio C HamanoDec 30, 2008

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.