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

Re: Amending merge commits?

From
Jonathan Nieder <jrnieder@gmail.com>
Date
Jul 25, 2014, 22:19 UTC
Message-ID
<20140725221911.GL12427@google.com>
In-Reply-To
<22F01493C523F940B4B5E53BB6D0F5352275F207@G5W2738.americas.hpqcorp.net>
Besen, David wrote:
> I think one of my coworkers has stumbled on a git bug -- if you
> amend a merge commit, and then pull, your amends are lost.

This is how pull --rebase works. It turns your single-parent commits into a sequence of patches on top of upstream and completely ignores your merge commits.

There is a --rebase=preserve option that makes a halfhearted attempt to preserve your merges --- perhaps that would help? The git-rebase(1) documentation has more details.

In an ideal world, I think pull --rebase would do the following:
 1. Do the same thing it does today
 2. Behind the scenes, *also* try a 'pull --merge' but don't save
    the result.
 3. Compare the results.  If they differ, show a diff and explain
    to the user what happened.
I may be the only one that wants that, though.

Hope that helps, Jonathan

Previous: David BesenNext: Besen, David
Message 3 of 8 in “Amending merge commits?”
  1. Besen, DavidJul 25, 2014
  2. David BesenJul 25, 2014
  3. Jonathan NiederJul 25, 2014
  4. Besen, DavidJul 25, 2014
  5. Jonathan NiederJul 25, 2014
  6. Sergei OrganovJul 28, 2014
  7. Jonathan NiederJul 28, 2014
  8. Sergei OrganovJul 28, 2014

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.