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

From: Junio C Hamano <[email-masked]>
Date: Thu, 11 Dec 2025 12:21:40 +0900

Phillip Wood <[email-masked]> writes:

> "git pull" already runs "git merge-base --fork-point" before it runs 
> "git fetch". The problematic reflog entry comes from a previous push 
> which pushes to a different server due to remote.<remote>.pushurl. 

Ah, of course.  fork-point heuristics with a repository you yourself
push into would not make all that sense, since you are in control
when and what to push there in the first place :/.

> Because we've just successfully pushed the local branch the fork point 
> calculation thinks the remote tracking branch matches the local branch 
> and so excludes all the local commits when we rebase but we didn't push 
> it to the same server that we're fetching from. I wonder if we should 
> disable the fork point calculation when there is a pushurl set.

Tempting thought.  Or educate users with diagnoses and advise()?