From: Phillip Wood Date: Mon, 08 Dec 2025 14:30:44 GMT Subject: Re: bug: `git pull --rebase` breaks in the presence of pushurls Message-ID: <04cc0cc0-155e-422e-b723-b1115c918087@gmail.com> In-Reply-To: <896e4e13-5d2f-4c5c-ac32-2927dbff91a0@app.fastmail.com> Hi Kartik On 07/12/2025 21:55, Kartik Agaram wrote: Thanks for the easy reproducer > 7. Create commit 3 in working directory A and try unsuccessfully to push it. > > cd ../A > echo c > c > git add . > git commit -m 'commit 3' > git push> > This throws an error when pushing to hub, but successfully pushes to mirror. "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". We should perhaps add a "--no-fork-point" option to "git pull" as this isn't the first time that the fork-point has caused problems [1]. There was a patch to do that at [2] but it was lacking tests. Thanks Phillip [1] https://lore.kernel.org/git/6bebcee9-1315-4ec3-a49b-d767f0f67bf7@gmail.com/ [2] https://lore.kernel.org/git/06beff46-cdaf-91c8-e6a3-6557694af618@gmail.com/