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

Re: [PATCH] rebase with preserve merges should not show merged commits

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Mar 22, 2008, 01:33 UTC
Message-ID
<alpine.LSU.1.00.0803220231020.4124@racer.site>
In-Reply-To
<1206148785-29466-1-git-send-email-joerg@alea.gnuu.de>
Hi,
On Sat, 22 Mar 2008, Jörg Sommer wrote:
Show 11 quoted lines
> The current version of git-rebase--interactive shows the user the 
> commits coming from a merge.
> 
> M---A---B
>  \       \
>   o---o---+---o branch
> 
> Rebasing branch on M with preserve merges gives the commits A and B. But 
> if you mark them for editing or remove them the rebase fails. You must 
> keep them as they are. It's useless to bother the user with these 
> commits and might lead to mistakes.

I don't understand. Rebasing with "rebase --onto <something else> M" _should_ show A and B.

Besides, I think that this would break exactly that case:
Show 6 quoted lines
> @@ -523,7 +525,7 @@ do
>  		SHORTONTO=$(git rev-parse --short $ONTO)
>  		git rev-list $MERGES_OPTION --pretty=oneline --abbrev-commit \
>  			--abbrev=7 --reverse --left-right --cherry-pick \
> -			$UPSTREAM...$HEAD | \
> +			--first-parent $UPSTREAM...$HEAD | \

If I am not mistaken, you now mark A and B to be _not_ in the list of commits all of a sudden, even if A and B _are_ reachable from "branch", but not from "M".

So I think this is exactly one of the cases which made me unsure if your expectation was always right.

IOW I think this is _very_ easy to get wrong, and needs careful thought.

Ciao, Dscho

Previous: Jörg SommerNext: Jörg Sommer
Message 5 of 19 in “rebase with preserve merges should not show merged commits”
  1. rebase with preserve merges should not show merged commitsJörg Sommer, Mar 22, 2008
  2. Check for non‐foreign commits in rebase-interactive testJörg Sommer, Mar 22, 2008
  3. Handle fast forward correctly in rebase with preserve mergesJörg Sommer, Mar 22, 2008
  4. New tests to check rebase with preserve mergesJörg Sommer, Mar 22, 2008
  5. Johannes SchindelinMar 22, 2008
  6. Jörg SommerMar 22, 2008
  7. Johannes SchindelinMar 22, 2008
  8. Björn SteinbrinkMar 22, 2008
  9. Jörg SommerMar 22, 2008
  10. Björn SteinbrinkMar 22, 2008
  11. Jörg SommerMar 22, 2008
  12. Björn SteinbrinkMar 22, 2008
  13. Jörg SommerMar 22, 2008
  14. 1/5 rebase with preserve merges should not show merged commitsJörg Sommer, Mar 22, 2008
  15. 2/5 New test: no merges without preserve mergesJörg Sommer, Mar 22, 2008
  16. 3/5 Check for non‐foreign commits in rebase-interactive testJörg Sommer, Mar 22, 2008
  17. 4/5 Handle fast forward correctly in rebase with preserve mergesJörg Sommer, Mar 22, 2008
  18. 5/5 New tests to check rebase with preserve mergesJörg Sommer, Mar 22, 2008
  19. Johannes SchindelinMar 22, 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.