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

Re: bug: `git pull --rebase` breaks in the presence of pushurls

From
Junio C Hamano <gitster@pobox.com>
Date
Dec 8, 2025, 22:24 UTC
Message-ID
<xmqqa4zsliim.fsf@gitster.g>
In-Reply-To
<04cc0cc0-155e-422e-b723-b1115c918087@gmail.com>
Phillip Wood <phillip.wood123@gmail.com> writes:
Show 16 quoted lines
> "git push" updates refs/remotes/origin/master when pushing to "mirror".
>
>> 8. Try to fix the problem:
>> 
>>    git pull --rebase
>
> "git pull" tries to find the fork point between origin/master and master 
> which is the tip of master because "git push" just updated origin/master 
> to point to the same commit as master.
>
> Unfortunately I'm not sure there is an easy way to fix this. For now I'd 
> recommend doing
>
> 	git fetch && git rebase --no-fork-point
>
> instead of running "git pull --rebase".

Yeah, it is an integral part of "fetch" to update the remote-tracking branches, so this is harder to fix.

It may be possible to stop doing the fork-point computation in the "git rebase" phase, and instead do it _before_ we run "git fetch", to figure out what part of our history needs to be transplanted on top of the upstream, run "git fetch" (to let the tracking branches updated), and then run "git rebase", telling it exactly what range should be transplanted onto which commit to update the branch currently checked out. That would be a much larger change.

Previous: Kartik AgaramNext: Kartik Agaram
Message 5 of 13 in “bug: `git pull --rebase` breaks in the presence of pushurls”
  1. Kartik AgaramDec 7, 2025
  2. Phillip WoodDec 8, 2025
  3. Phillip WoodDec 8, 2025
  4. Kartik AgaramDec 8, 2025
  5. Junio C HamanoDec 8, 2025
  6. Kartik AgaramDec 9, 2025
  7. Phillip WoodDec 9, 2025
  8. Phillip WoodDec 10, 2025
  9. Junio C HamanoDec 11, 2025
  10. K JayatheerthDec 11, 2025
  11. Phillip WoodDec 11, 2025
  12. Phillip WoodDec 11, 2025
  13. Phillip WoodDec 11, 2025

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.